Method: Circuitdata::Bury.bury

Defined in:
lib/circuitdata/bury/bury.rb

.bury(data, *path, value) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/circuitdata/bury/bury.rb', line 6

def bury(data, *path, value)
  current_data = data
  path[0..-2].each_with_index do |part, i|
    current_data = next_level(part, path[i + 1], current_data)
  end
  if !value.nil?
    current_data[path.last] = value
  else
    current_data.delete(path.last)
  end
  data
end