module Regexp::Expression
def self.parsed(exp)
def self.parsed(exp) case exp when String Regexp::Parser.parse(exp) when Regexp Regexp::Parser.parse(exp.source) when Regexp::Expression exp else raise ArgumentError, 'Expression.parsed accepts a String, Regexp, or '\ 'a Regexp::Expression as a value for exp, but it '\ "was given #{exp.class.name}." end end