Class: Cldr::Export::Data::TerritoriesContainment
- Defined in:
- lib/cldr/export/data/territories_containment.rb
Instance Attribute Summary
Attributes inherited from Base
Instance Method Summary collapse
-
#initialize ⇒ TerritoriesContainment
constructor
A new instance of TerritoriesContainment.
- #path ⇒ Object
- #territories ⇒ Object
Methods inherited from Base
Methods inherited from Hash
#deep_merge, #deep_stringify_keys, #symbolize_keys
Constructor Details
#initialize ⇒ TerritoriesContainment
Returns a new instance of TerritoriesContainment.
5 6 7 8 |
# File 'lib/cldr/export/data/territories_containment.rb', line 5 def initialize(*) super(nil) update(:territories => territories) end |
Instance Method Details
#path ⇒ Object
24 25 26 |
# File 'lib/cldr/export/data/territories_containment.rb', line 24 def path @path ||= "#{Cldr::Export::Data.dir}/supplemental/supplementalData.xml" end |
#territories ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/cldr/export/data/territories_containment.rb', line 10 def territories @territories ||= doc.xpath('supplementalData/territoryContainment/group').inject( Hash.new { |h, k| h[k] = { :contains => [] } } ) do |memo, territory| territory_id = territory.attribute('type').value children = territory.attribute('contains').value.split(' ') memo[territory_id][:contains].concat(children) memo[territory_id][:contains].sort! memo end end |