Module: TwitterCldr::Collation::TrieBuilder

Defined in:
lib/twitter_cldr/collation/trie_builder.rb

Overview

Builds a fractional collation elements Trie from the file containing a fractional collation elements table.

Constant Summary collapse

FCE_REGEXP =

Fractional collation element regexp

/^((?:[0-9A-F]+)(?:\s[0-9A-F]+)*);\s((?:\[.*?\])(?:\[.*?\])*)/

Class Method Summary collapse

Class Method Details

.load_tailored_trie(locale, fallback) ⇒ Object



22
23
24
# File 'lib/twitter_cldr/collation/trie_builder.rb', line 22

def load_tailored_trie(locale, fallback)
  build_tailored_trie(TwitterCldr.get_resource(:collation, :tailoring, locale), fallback)
end

.load_trie(resource) ⇒ Object



18
19
20
# File 'lib/twitter_cldr/collation/trie_builder.rb', line 18

def load_trie(resource)
  parse_trie(load_resource(resource))
end

.parse_trie(table, trie = TwitterCldr::Collation::Trie.new) ⇒ Object



26
27
28
29
30
31
32
# File 'lib/twitter_cldr/collation/trie_builder.rb', line 26

def parse_trie(table, trie = TwitterCldr::Collation::Trie.new)
  table.lines.each do |line|
    trie.set(parse_code_points($1), parse_collation_element($2)) if FCE_REGEXP =~ line
  end

  trie
end