class Riml::Compiler::TernaryOperatorNodeVisitor

Public Instance Methods

compile(node) click to toggle source
# File lib/riml/compiler.rb, line 95
def compile(node)
  node.operands.each {|n| n.parent_node = node}
  cond_visitor = visitor_for_node(node.condition)
  node.condition.accept(cond_visitor)
  node.compiled_output << ' ? '
  if_expr_visitor = visitor_for_node(node.if_expr)
  node.if_expr.accept(if_expr_visitor)
  node.compiled_output << ' : '
  else_expr_visitor = visitor_for_node(node.else_expr)
  node.else_expr.accept(else_expr_visitor)
  node.compiled_output
end