Sha256: 95b3cf718cf0bdc5f3bb5e2baeca09d7f8601b2251837143327af776633b02fc

Contents?: true

Size: 1.04 KB

Versions: 2

Compression:

Stored size: 1.04 KB

Contents

# encoding: UTF-8

# Copyright 2012 Twitter, Inc
# http://www.apache.org/licenses/LICENSE-2.0

module TwitterCldr
  module Resources

    module TriesDumper

      class << self

        def update_dumps
          update_default_trie_dump
          TwitterCldr.supported_locales.each { |locale| update_tailoring_trie_dump(locale) }
        end

        private

        def update_default_trie_dump
          save_trie_dump(TwitterCldr::Collation::TrieLoader::DEFAULT_TRIE_LOCALE, default_trie)
        end

        def update_tailoring_trie_dump(locale)
          save_trie_dump(locale, TwitterCldr::Collation::TrieBuilder.load_tailored_trie(locale, @default_trie))
        end

        def save_trie_dump(locale, trie)
          path = TwitterCldr::Collation::TrieLoader.dump_path(locale)
          FileUtils.mkdir_p(File.dirname(path))

          File.open(path, 'w') { |f| f.write(Marshal.dump(trie)) }
        end

        def default_trie
          @default_trie ||= TwitterCldr::Collation::TrieBuilder.load_default_trie
        end
      end

    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
twitter_cldr-1.7.0 lib/twitter_cldr/resources/tries_dumper.rb
twitter_cldr-1.6.2 lib/twitter_cldr/resources/tries_dumper.rb