Class: Hash

Inherits:
Object
  • Object
show all
Defined in:
lib/rbcli/util/hash_deep_symbolize.rb

Overview

Functions to convert hash keys to all symbols or all strings

Instance Method Summary collapse

Instance Method Details

#deep_stringify!(hsh = nil) ⇒ Object



38
39
40
41
42
43
44
45
46
47
48
# File 'lib/rbcli/util/hash_deep_symbolize.rb', line 38

def deep_stringify! hsh = nil
	hsh ||= self
	hsh.keys.each do |k|
		if k.is_a? Symbol
			hsh[k.to_s] = hsh[k]
			hsh.delete k
		end
		deep_stringify! hsh[k.to_s] if hsh[k.to_s].is_a? Hash
	end
	hsh
end

#deep_symbolize!(hsh = nil) ⇒ Object



26
27
28
29
30
31
32
33
34
35
36
# File 'lib/rbcli/util/hash_deep_symbolize.rb', line 26

def deep_symbolize! hsh = nil
	hsh ||= self
	hsh.keys.each do |k|
		if k.is_a? String
			hsh[k.to_sym] = hsh[k]
			hsh.delete k
		end
		deep_symbolize! hsh[k.to_sym] if hsh[k.to_sym].is_a? Hash
	end
	hsh
end