package com.babel17.syntaxtree; public final class BinaryNode extends Node { public BinaryNode(OperatorNode op, Node left, Node right) { this.op = op; this.left = left; this.right = right; } public OperatorNode operator() { return op; } public Node leftOperand() { return left; } public Node rightOperand() { return right; } public NodeList children() { return new NodeList().cons(right).cons(op).cons(left); } private OperatorNode op; private Node left, right; }