Sha256: 66f296570e7542df9f4e6a523cd54915af5fd7be3961a491063db820366a8ed8
Contents?: true
Size: 830 Bytes
Versions: 2
Compression:
Stored size: 830 Bytes
Contents
require 'hashie/hash_extensions' module Hashie # A Hashie Hash is simply a Hash that has convenience # functions baked in such as stringify_keys that may # not be available in all libraries. class Hash < ::Hash include Hashie::HashExtensions # Converts a mash back to a hash (with stringified keys) def to_hash out = {} keys.each do |k| if self[k].is_a?(Array) out[k] ||= [] self[k].each do |array_object| out[k] << (Hashie::Hash === array_object ? array_object.to_hash : array_object) end else out[k] = Hashie::Hash === self[k] ? self[k].to_hash : self[k] end end out end # The C geneartor for the json gem doesn't like mashies def to_json(*args) to_hash.to_json(*args) end end end
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
cb_hashie-2.0.0.beta | lib/hashie/hash.rb |
hashie-pre-2.0.0.beta | lib/hashie/hash.rb |