Class: Code::Node::Number

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

Instance Method Summary collapse

Methods inherited from Code::Node

#resolve

Constructor Details

#initialize(parsed) ⇒ Number

Returns a new instance of Number.



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/code/node/number.rb', line 6

def initialize(parsed)
  if parsed.key?(:decimal)
    @statement = Node::Decimal.new(parsed.delete(:decimal))
  elsif parsed.key?(:base_16)
    @statement = Node::Base16.new(parsed.delete(:base_16))
  elsif parsed.key?(:base_10)
    @statement = Node::Base10.new(parsed.delete(:base_10))
  elsif parsed.key?(:base_8)
    @statement = Node::Base8.new(parsed.delete(:base_8))
  elsif parsed.key?(:base_2)
    @statement = Node::Base2.new(parsed.delete(:base_2))
  end

  super(parsed)
end

Instance Method Details

#evaluate(**args) ⇒ Object



22
23
24
# File 'lib/code/node/number.rb', line 22

def evaluate(**args)
  @statement.evaluate(**args)
end