public void Accept(TernaryOperationNode node)
 {
 }
Beispiel #2
0
 public void Accept(TernaryOperationNode node)
 {
     var falseLabel = nextLabel();
     var endLabel = nextLabel();
     node.Predicate.Visit(this);
     method.Emit(node.SourceLocation, InstructionType.JumpIfFalse, falseLabel);
     node.TrueStatement.Visit(this);
     method.Emit(node.SourceLocation, InstructionType.Jump, endLabel);
     method.EmitLabel(node.SourceLocation, falseLabel);
     node.FalseStatement.Visit(this);
     method.EmitLabel(node.SourceLocation, endLabel);
 }