Class: Regexp::Expression::EscapeSequence::CodepointList
- Inherits:
-
Base
- Object
- Base
- Base
- Regexp::Expression::EscapeSequence::CodepointList
show all
- Defined in:
- lib/regexp_parser/expression/classes/escape_sequence.rb,
lib/regexp_parser/expression/methods/match_length.rb
Instance Method Summary
collapse
Methods inherited from Base
#ascii_classes?, #case_insensitive?, #default_classes?, #free_spacing?, #greedy?, #initialize, #initialize_copy, #match, #match?, #multiline?, #possessive?, #quantify, #quantity, #reluctant?, #repetitions, #strfregexp, #to_h, #to_re, #unicode_classes?, #unquantified_clone
Methods included from Shared
#==, #base_length, #coded_offset, #full_length, included, #initialize_copy, #is?, #nesting_level=, #offset, #one_of?, #parts, #quantified?, #quantifier_affix, #starts_at, #terminal?, #to_s, #token_class, #type?
Instance Method Details
#char ⇒ Object
41
42
43
|
# File 'lib/regexp_parser/expression/classes/escape_sequence.rb', line 41
def char
raise NoMethodError, 'CodepointList responds only to #chars'
end
|
#chars ⇒ Object
49
50
51
|
# File 'lib/regexp_parser/expression/classes/escape_sequence.rb', line 49
def chars
codepoints.map { |cp| cp.chr('utf-8') }
end
|
#codepoint ⇒ Object
45
46
47
|
# File 'lib/regexp_parser/expression/classes/escape_sequence.rb', line 45
def codepoint
raise NoMethodError, 'CodepointList responds only to #codepoints'
end
|
#codepoints ⇒ Object
53
54
55
|
# File 'lib/regexp_parser/expression/classes/escape_sequence.rb', line 53
def codepoints
text.scan(/\h+/).map(&:hex)
end
|
#match_length ⇒ Object
160
161
162
|
# File 'lib/regexp_parser/expression/methods/match_length.rb', line 160
def match_length
MatchLength.new(self, base: codepoints.count)
end
|