module NgaExtensions::Hash

Public Instance Methods

forceUTF8!() click to toggle source
# File lib/nga_extensions/hash.rb, line 9
def forceUTF8!
  self.hmap do |k,v|
    { k => v.respond_to?(:force_encoding) ? v.force_encoding('UTF-8') : v }
  end
  self
end
hmap(&block) click to toggle source
# File lib/nga_extensions/hash.rb, line 15
def hmap(&block)
  self.inject({}){ |hash,(k,v)| hash.merge( block.call(k,v) ) }
end
reject_keys(*args) click to toggle source
# File lib/nga_extensions/hash.rb, line 6
def reject_keys *args
  reject {|k,v| args.include?(k) || args.include?(k.to_sym)}
end
select_keys(*args) click to toggle source
# File lib/nga_extensions/hash.rb, line 3
def select_keys *args
  select {|k,v| args.include?(k) || args.include?(k.to_sym)}
end
to_array_of_hashes() click to toggle source
# File lib/nga_extensions/hash.rb, line 18
def to_array_of_hashes
  self.inject([]) do |array,(k,v)|
    array << {k => v}
    array
  end
end