Class: Code::Node::Dictionary

Inherits:
Code::Node show all
Defined in:
lib/code/node/dictionary.rb

Defined Under Namespace

Classes: KeyValue

Instance Method Summary collapse

Methods inherited from Code::Node

#resolve

Constructor Details

#initialize(parsed) ⇒ Dictionary

Returns a new instance of Dictionary.



29
30
31
32
33
# File 'lib/code/node/dictionary.rb', line 29

def initialize(parsed)
  parsed = [] if parsed == ""
  @key_values =
    parsed.map { |key_value| Node::Dictionary::KeyValue.new(key_value) }
end

Instance Method Details

#evaluate(**args) ⇒ Object



35
36
37
38
39
# File 'lib/code/node/dictionary.rb', line 35

def evaluate(**args)
  ::Code::Object::Dictionary.new(
    @key_values.map { |key_value| key_value.evaluate(**args) }.to_h
  )
end