Class: Destruct::Resolver

Inherits:
Object
  • Object
show all
Defined in:
lib/destruct/resolver.rb

Instance Method Summary collapse

Constructor Details

#initialize(object, path) ⇒ Resolver

Returns a new instance of Resolver.



3
4
5
6
# File 'lib/destruct/resolver.rb', line 3

def initialize(object, path)
  @object = object
  @path = path
end

Instance Method Details

#to_hObject



8
9
10
11
12
13
14
15
16
17
# File 'lib/destruct/resolver.rb', line 8

def to_h
  case @path
  when Array
    { @path.last => @object.dig(*@path) }
  when ::Hash
    resolve_recursively
  else
    self.class.new(@object, paths).to_h
  end
end