Module: Reginald
- Defined in:
- lib/rack/mount/vendor/reginald/reginald.rb,
lib/rack/mount/vendor/reginald/reginald/atom.rb,
lib/rack/mount/vendor/reginald/reginald/group.rb,
lib/rack/mount/vendor/reginald/reginald/anchor.rb,
lib/rack/mount/vendor/reginald/reginald/parser.rb,
lib/rack/mount/vendor/reginald/reginald/character.rb,
lib/rack/mount/vendor/reginald/reginald/tokenizer.rb,
lib/rack/mount/vendor/reginald/reginald/collection.rb,
lib/rack/mount/vendor/reginald/reginald/expression.rb,
lib/rack/mount/vendor/reginald/reginald/alternation.rb,
lib/rack/mount/vendor/reginald/reginald/character_class.rb
Defined Under Namespace
Classes: Alternation, Anchor, Atom, Character, CharacterClass, Collection, Expression, Group, Parser
Class Method Summary collapse
-
.compile(source) ⇒ Object
Recompiles Regexp by parsing it and turning it back into a Regexp.
-
.parse(regexp) ⇒ Object
Parses Regexp and returns a Expression data structure.
Class Method Details
.compile(source) ⇒ Object
Recompiles Regexp by parsing it and turning it back into a Regexp.
(In the future Reginald will perform some Regexp optimizations such as removing unnecessary captures and options)
38 39 40 41 42 |
# File 'lib/rack/mount/vendor/reginald/reginald.rb', line 38 def compile(source) regexp = Regexp.compile(source) expression = parse(regexp) Regexp.compile(expression.to_s(true), expression.) end |
.parse(regexp) ⇒ Object
Parses Regexp and returns a Expression data structure.
30 31 32 |
# File 'lib/rack/mount/vendor/reginald/reginald.rb', line 30 def parse(regexp) Parser.parse_regexp(regexp) end |