Module: ActionReporter::Utils

Defined in:
lib/action_reporter/utils.rb

Class Method Summary collapse

Class Method Details

.deep_transform_values(value, &block) ⇒ Object



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

def deep_transform_values(value, &block)
  case value
  when Hash
    value.each_with_object({}) do |(k, v), result|
      result[k] = deep_transform_values(v, &block)
    end
  when Array
    value.map { |element| deep_transform_values(element, &block) }
  else
    block.call(value)
  end
end