Class: Code::Node::Function
- Inherits:
-
Code::Node
- Object
- Code::Node
- Code::Node::Function
- Defined in:
- lib/code/node/function.rb
Instance Method Summary collapse
- #evaluate(**_args) ⇒ Object
-
#initialize(parsed) ⇒ Function
constructor
A new instance of Function.
Methods inherited from Code::Node
Constructor Details
#initialize(parsed) ⇒ Function
Returns a new instance of Function.
6 7 8 9 10 11 12 13 14 15 16 |
# File 'lib/code/node/function.rb', line 6 def initialize(parsed) @parameters = parsed.delete(:parameters) { [] } @parameters = [] if @parameters.empty? @parameters = @parameters.map { |parameter| Node::FunctionParameter.new(parameter) } @body = Node::Code.new(parsed.delete(:body)) super(parsed) end |
Instance Method Details
#evaluate(**_args) ⇒ Object
18 19 20 |
# File 'lib/code/node/function.rb', line 18 def evaluate(**_args) ::Code::Object::Function.new(parameters: @parameters, body: @body) end |