Module: Regexp::Expression

Included in:
Parser
Defined in:
lib/regexp_parser/expression.rb,
lib/regexp_parser/expression/sequence.rb,
lib/regexp_parser/expression/quantifier.rb,
lib/regexp_parser/expression/classes/set.rb,
lib/regexp_parser/expression/classes/keep.rb,
lib/regexp_parser/expression/classes/root.rb,
lib/regexp_parser/expression/classes/type.rb,
lib/regexp_parser/expression/classes/group.rb,
lib/regexp_parser/expression/methods/tests.rb,
lib/regexp_parser/expression/subexpression.rb,
lib/regexp_parser/expression/classes/anchor.rb,
lib/regexp_parser/expression/classes/escape.rb,
lib/regexp_parser/expression/classes/backref.rb,
lib/regexp_parser/expression/classes/literal.rb,
lib/regexp_parser/expression/classes/property.rb,
lib/regexp_parser/expression/methods/traverse.rb,
lib/regexp_parser/expression/classes/set/range.rb,
lib/regexp_parser/expression/classes/free_space.rb,
lib/regexp_parser/expression/methods/strfregexp.rb,
lib/regexp_parser/expression/sequence_operation.rb,
lib/regexp_parser/expression/classes/alternation.rb,
lib/regexp_parser/expression/classes/conditional.rb,
lib/regexp_parser/expression/classes/posix_class.rb,
lib/regexp_parser/expression/classes/set/intersection.rb

Defined Under Namespace

Modules: Anchor, Assertion, Backreference, CharacterType, Conditional, EscapeSequence, Group, Keep, UnicodeProperty Classes: Alternation, Alternative, Base, CharacterSet, Comment, FreeSpace, Literal, PosixClass, Quantifier, Root, Sequence, SequenceOperation, Subexpression, WhiteSpace

Class Method Summary collapse

Class Method Details

.parsed(exp) ⇒ Object



147
148
149
150
151
152
153
154
155
156
157
158
159
160
# File 'lib/regexp_parser/expression.rb', line 147

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