Class: Hash

Inherits:
Object
  • Object
show all
Defined in:
lib/civic_aide/hash.rb

Instance Method Summary collapse

Instance Method Details

#change_zip!Object



23
24
25
26
27
28
29
30
# File 'lib/civic_aide/hash.rb', line 23

def change_zip!
  keys.each do |k|
    self["zipCode"] = self.delete "zip"  if k == "zip"
    self[k].change_zip! if self[k].is_a? Hash
    self[k].each{|p| p.change_zip! if p.is_a?(Hash)} if self[k].is_a?(Array)
  end
  self
end

#except!(*keys) ⇒ Object



18
19
20
21
# File 'lib/civic_aide/hash.rb', line 18

def except!(*keys)
  keys.each { |key| delete(key) }
  self
end

#rubyify_keys!Object



3
4
5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/civic_aide/hash.rb', line 3

def rubyify_keys!
  keys.each do |k|
    val = self[k]
    # ignore Open Civic Data identifiers
    unless k[0..3] == "ocd-"
      delete(k)
      new_key = k.to_s.underscore
      self[new_key] = val
    end
    val.rubyify_keys! if val.is_a?(Hash)
    val.each{|p| p.rubyify_keys! if p.is_a?(Hash)} if val.is_a?(Array)
  end
  self
end