class EleetScript::IfNode
Public Instance Methods
eval(context)
click to toggle source
# File lib/lang/interpreter.rb, line 365 def eval(context) cond = condition.eval(context) cond = (cond.class? ? cond : cond.ruby_value) if cond ret = body.eval(context) if body.returnable? && body.returned? body.reset_returned returned elsif body.nextable? && body.nexted? body.reset_nexted nexted return context.es_nil end ret else unless else_node.nil? ret = else_node.eval(context) if else_node.returned? else_node.reset_returned returned elsif else_node.nexted? else_node.reset_nexted nexted return context.es_nil end ret end end end