module Regexp::Expression::EscapeSequence
Constants
- AbstractMetaControlSequence
- AsciiEscape
- Backspace
- Base
- Bell
- Codepoint
- CodepointList
- Control
- FormFeed
- Hex
- Literal
- Meta
- MetaControl
- Newline
- Octal
- Return
- Tab
- UTF8Hex
- VerticalTab
Public Instance Methods
Source
# File lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb, line 28 def char raise NoMethodError, 'CodepointList responds only to #chars' end
Maybe this should be a unique top-level expression class?
Source
# File lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb, line 36 def chars codepoints.map { |cp| cp.chr('utf-8') } end
Source
# File lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb, line 4 def codepoint; 0x1B end
Source
# File lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb, line 40 def codepoints text.scan(/\h+/).map(&:hex) end
Source
# File lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb, line 48 def control_sequence_to_s(control_sequence) five_lsb = control_sequence.unpack('B*').first[-5..-1] ["000#{five_lsb}"].pack('B*') end
Source
# File lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb, line 53 def meta_char_to_codepoint(meta_char) byte_value = meta_char.ord byte_value < 128 ? byte_value + 128 : byte_value end