Sha256: 0ffae9b9ed1e330fa2860b2ab3043a5f96cbc38467a75f712af427018a2d08f6
Contents?: true
Size: 678 Bytes
Versions: 4
Compression:
Stored size: 678 Bytes
Contents
class Hash def sort_array! keys.each do |key| value = self[key] self[key] = sort_array0(value) end self end def keys_to_s_recursive new_one = {} self.each do |key, elem| if elem.respond_to? :keys_to_s_recursive new_one[key.to_s] = elem.keys_to_s_recursive next end new_one[key.to_s] = elem end new_one end private def sort_array0(value) case value when Hash new_value = {} value.each do |k, v| new_value[k] = sort_array0(v) end new_value when Array value.map {|v| sort_array0(v) }.sort_by(&:to_s) else value end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
subiam-1.3.2 | lib/subiam/ext/hash_ext.rb |
subiam-1.3.1 | lib/subiam/ext/hash_ext.rb |
subiam-1.3.0 | lib/subiam/ext/hash_ext.rb |
subiam-1.2.1 | lib/subiam/ext/hash_ext.rb |