Module: Angus::Params

Defined in:
lib/angus/utils/params.rb

Class Method Summary collapse

Class Method Details

.indifferent_hashObject

Creates a Hash with indifferent access.



19
20
21
# File 'lib/angus/utils/params.rb', line 19

def self.indifferent_hash
  Hash.new {|hash,key| hash[key.to_s] if Symbol === key }
end

.indifferent_params(object) ⇒ Object

Enable string or symbol key access to the nested params hash.



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/angus/utils/params.rb', line 5

def self.indifferent_params(object)
  case object
    when Hash
      new_hash = indifferent_hash
      object.each { |key, value| new_hash[key] = indifferent_params(value) }
      new_hash
    when Array
      object.map { |item| indifferent_params(item) }
    else
      object
  end
end