Module: UniverseCompiler::Utils::DeepTraverse

Included in:
SuperStack::MergePolicies::InheritanceMergePolicy, Entity::Base, UniverseCompiler::Universe::Compile
Defined in:
lib/universe_compiler/utils/deep_traverse.rb

Instance Method Summary collapse

Instance Method Details

#deep_map(structure, &block) ⇒ Object



17
18
19
20
21
22
23
24
25
26
# File 'lib/universe_compiler/utils/deep_traverse.rb', line 17

def deep_map(structure, &block)
  case structure
  when Hash
    deep_map_hash structure, &block
  when Array
    deep_map_array structure, &block
  else
    yield structure
  end
end

#deep_traverse(structure, &block) ⇒ Object



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

def deep_traverse(structure, &block)
  case structure
  when Hash
    deep_traverse_hash structure, &block
  when Array
    deep_traverse_array structure, &block
  else
    yield structure
  end
end