Class: HashIsh::AddDefaultValues
- Inherits:
-
Object
- Object
- HashIsh::AddDefaultValues
- Defined in:
- lib/hash_ish/add_default_values.rb
Instance Method Summary collapse
- #add(kwargs, defaults) ⇒ Object
- #add_defaults(hash, defaults) ⇒ Object
- #truthy?(hash, key) ⇒ Boolean
Instance Method Details
#add(kwargs, defaults) ⇒ Object
3 4 5 6 7 8 9 |
# File 'lib/hash_ish/add_default_values.rb', line 3 def add(kwargs, defaults) hash = kwargs.dup hash.tap do |hash| add_defaults(hash, defaults) end end |
#add_defaults(hash, defaults) ⇒ Object
11 12 13 14 15 16 17 18 19 20 |
# File 'lib/hash_ish/add_default_values.rb', line 11 def add_defaults(hash, defaults) defaults.each do |key, value| if Srm.is_a_hash?(value) arg_hash = hash[key] || {} hash[key] = AddDefaultValues.new.add(arg_hash, value) else hash[key] ||= value end end end |
#truthy?(hash, key) ⇒ Boolean
22 23 24 |
# File 'lib/hash_ish/add_default_values.rb', line 22 def truthy?(hash, key) !!hash[key] end |