Module: L43Peg::Parsers::EscapeParser
- Extended by:
- EscapeParser
- Included in:
- EscapeParser
- Defined in:
- lib/l43_peg/parsers/escape_parser.rb
Instance Method Summary collapse
Instance Method Details
#escape_parser(escape_char_set, escapees = nil, name: nil, with_box: nil) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/l43_peg/parsers/escape_parser.rb', line 6 def escape_parser(escape_char_set, escapees=nil, name: nil, with_box: nil) name = name || "escape_parser(#{escape_char_set.inspect}, #{escapees.inspect})" s = Combinators.sequence( Parsers.char_parser(escape_char_set), Parsers.char_parser(escapees) ) if with_box s.map(name:) { |_, escaped| escaped }.boxed(with_box) else s.map(name:) { |_, escaped| escaped } end end |