Module: DocMyRoutes::HashHelpers
- Defined in:
- lib/doc_my_routes/doc/hash_helpers.rb
Overview
Define hash helpers for deep hash merge and transforming hash into array of keys
Class Method Summary collapse
Class Method Details
.array_to_hash_keys(arr, default_value = {}) ⇒ Object
12 13 14 |
# File 'lib/doc_my_routes/doc/hash_helpers.rb', line 12 def self.array_to_hash_keys(arr, default_value = {}) {}.tap { |hash| arr.each { |key| hash[key] = default_value } } end |
.deep_merge(first_hash, second_hash) ⇒ Object
4 5 6 7 8 9 10 |
# File 'lib/doc_my_routes/doc/hash_helpers.rb', line 4 def self.deep_merge(first_hash, second_hash) merger = proc do |key, first, second| first.is_a?(Hash) && second.is_a?(Hash) ? first.merge(second, &merger) : second end first_hash.merge(second_hash, &merger) end |