2 import IR.AssignOperation;
3 import IR.TypeDescriptor;
5 public class AssignmentNode extends ExpressionNode {
10 public AssignmentNode(ExpressionNode l, ExpressionNode r, AssignOperation op) {
16 public ExpressionNode getDest() {
20 public ExpressionNode getSrc() {
24 public AssignOperation getOperation() {
28 public String printNode(int indent) {
30 return left.printNode(indent)+" "+op.toString();
32 return left.printNode(indent)+" "+op.toString()+" "+right.printNode(indent);
35 public TypeDescriptor getType() {
36 return left.getType();
40 return Kind.AssignmentNode;
43 public Long evaluate() {
44 eval = left.evaluate();