Class: Hash

Inherits:
Object
  • Object
show all
Defined in:
lib/awrence/ext/hash/to_camel_keys.rb

Instance Method Summary collapse

Instance Method Details

#to_camel_keys(value = self) ⇒ Object

Recursively converts Rubyish snake_case hash keys to CamelCase JSON-style hash keys suitable for use with a JSON API.



20
21
22
23
24
25
26
27
28
29
# File 'lib/awrence/ext/hash/to_camel_keys.rb', line 20

def to_camel_keys(value = self)
  case value
    when Array
      value.map { |v| to_camel_keys(v) }
    when Hash
      Hash[value.map { |k, v| [camelize_key(k), to_camel_keys(v)] }]
    else
      value
  end
end

#to_camelback_keys(value = self) ⇒ Object

Recursively converts Rubyish snake_case hash keys to camelBack JSON-style hash keys suitable for use with a JSON API.



6
7
8
9
10
11
12
13
14
15
# File 'lib/awrence/ext/hash/to_camel_keys.rb', line 6

def to_camelback_keys(value = self)
  case value
    when Array
      value.map { |v| to_camelback_keys(v) }
    when Hash
      Hash[value.map { |k, v| [camelize_key(k, false), to_camelback_keys(v)] }]
    else
      value
  end
end