class TwitterCldr::Parsers::UnicodeRegexParser::CharacterRange
Regex character range eg. a-z or 0-9 Can only exist in character classes
Attributes
final[R]
initial[R]
Public Class Methods
new(initial, final)
click to toggle source
# File lib/twitter_cldr/parsers/unicode_regex/character_range.rb, line 16 def initialize(initial, final) @initial = initial @final = final end
Public Instance Methods
codepoints()
click to toggle source
# File lib/twitter_cldr/parsers/unicode_regex/character_range.rb, line 36 def codepoints to_set.to_full_a end
to_regexp_str()
click to toggle source
# File lib/twitter_cldr/parsers/unicode_regex/character_range.rb, line 40 def to_regexp_str set_to_regex(to_set) end
to_s()
click to toggle source
# File lib/twitter_cldr/parsers/unicode_regex/character_range.rb, line 44 def to_s "#{initial.to_s}-#{final.to_s}" end
to_set()
click to toggle source
# File lib/twitter_cldr/parsers/unicode_regex/character_range.rb, line 30 def to_set TwitterCldr::Utils::RangeSet.new( [initial.to_set.to_full_a.first..final.to_set.to_full_a.first] ) end
type()
click to toggle source
Unfortunately, due to the ambiguity of having both character ranges and set operations in the same syntax (which both use the “-” operator and square brackets), we have to treat CharacterRange
as both a token and an operand. This type method helps it behave like a token.
# File lib/twitter_cldr/parsers/unicode_regex/character_range.rb, line 26 def type :character_range end