package com.pixelmaid.dresscode.antlr.types.tree.functions; import com.pixelmaid.dresscode.antlr.types.VarType; import com.pixelmaid.dresscode.antlr.types.tree.DCNode; import com.pixelmaid.dresscode.antlr.types.tree.NodeEvent; import com.pixelmaid.dresscode.events.CustomEvent; import java.io.PrintStream; public class PrintNode extends NodeEvent implements DCNode { private DCNode expression; private PrintStream out; public PrintNode(DCNode e) { this(e, System.out); } public PrintNode(DCNode e, PrintStream o) { expression = e; out = o; } @Override public VarType evaluate() { VarType value = expression.evaluate(); out.print(value == VarType.NULL ? "" : value); this.firePrintEvent(CustomEvent.PRINT_STATEMENT, value.toString()); // Window.output.setText(Window.output.getText()+value.toString()); return VarType.VOID; } }