class EleetScript::Nodes
Public Instance Methods
<<(node)
click to toggle source
# File lib/lang/nodes.rb, line 27 def <<(node) nodes << node self end
eval(context)
click to toggle source
# File lib/lang/interpreter.rb, line 97 def eval(context) return_value = nil nodes.each do |node| if node.kind_of?(ReturnNode) returned break return_value = node.eval(context) elsif node.kind_of?(NextNode) nexted break else return_value = node.eval(context) end if node.returnable? && node.returned? returned node.reset_returned break elsif node.nextable? && node.nexted? node.reset_nexted nexted break end end return_value || context.es_nil end
to_s(level = 0)
click to toggle source
# File lib/lang/nodes.rb, line 32 def to_s(level = 0) str = "#{spaces(level)}<EleetScript::Nodes\n" nodes.each do |node| str += node.to_s(level + 1) end str + "#{spaces(level)}>\n" end