Class: Code::Node::Power

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

Instance Method Summary collapse

Constructor Details

#initialize(parsed) ⇒ Power

Returns a new instance of Power.



4
5
6
7
8
9
# File 'lib/code/node/power.rb', line 4

def initialize(parsed)
  @operator = parsed.delete(:operator)
  @left = Node::Statement.new(parsed.delete(:left))
  @right = Node::Statement.new(parsed.delete(:right))
  super(parsed)
end

Instance Method Details

#evaluate(**args) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/code/node/power.rb', line 11

def evaluate(**args)
  @left.evaluate(**args).call(
    operator: @operator,
    arguments: [::Code::Object::Argument.new(@right.evaluate(**args))],
    **args
  )
end