class TwitterCldr::Parsers::UnicodeRegexParser::UnicodeString

unicode_char, escaped_char, string, multichar_string Can exist inside and outside of character classes

Attributes

codepoints[R]

Public Class Methods

new(codepoints) click to toggle source
# File lib/twitter_cldr/parsers/unicode_regex/unicode_string.rb, line 16
def initialize(codepoints)
  @codepoints = codepoints
end

Public Instance Methods

to_regexp_str() click to toggle source
# File lib/twitter_cldr/parsers/unicode_regex/unicode_string.rb, line 33
def to_regexp_str
  array_to_regex(Array(codepoints))
end
to_s() click to toggle source
# File lib/twitter_cldr/parsers/unicode_regex/unicode_string.rb, line 37
def to_s
  to_regexp_str
end
to_set() click to toggle source
# File lib/twitter_cldr/parsers/unicode_regex/unicode_string.rb, line 20
def to_set
  # If the number of codepoints is greater than 1, treat them as a
  # group (eg. multichar string). This is definitely a hack in that
  # it means there has to be special logic in RangeSet that deals
  # with data types that aren't true integer ranges. I can't think
  # of any other way to support multichar strings :(
  if codepoints.size > 1
    TwitterCldr::Utils::RangeSet.new([codepoints..codepoints])
  else
    TwitterCldr::Utils::RangeSet.new([codepoints.first..codepoints.first])
  end
end
type() click to toggle source
# File lib/twitter_cldr/parsers/unicode_regex/unicode_string.rb, line 41
def type
  :unicode_string
end