class Yadriggy::Exprs
expressions, or progn in Lisp.
Attributes
expressions[R]
@return [Array<ASTnode>] the expressions.
It may be an empty array.
Public Class Methods
make(sexp)
click to toggle source
@param [Array] sexp an S-expression. @return [Exprs|ASTnode] an AST.
# File lib/yadriggy/ast.rb, line 373 def self.make(sexp) if sexp.length == 1 if sexp[0][0] == :void_stmt Exprs.new([]) else ASTree.to_node(sexp[0]) end else Exprs.new(sexp) end end
new(sexp)
click to toggle source
# File lib/yadriggy/ast.rb, line 385 def initialize(sexp) @expressions = to_nodes(sexp) add_children(@expressions) end
Public Instance Methods
accept(evaluator)
click to toggle source
A method for Visitor pattern. @param [Eval] evaluator the visitor of Visitor pattern. @return [void]
# File lib/yadriggy/ast.rb, line 393 def accept(evaluator) evaluator.exprs(self) end