package IR.Tree; import IR.FieldDescriptor; import IR.TypeDescriptor; public class FieldAccessNode extends ExpressionNode { ExpressionNode left; String fieldname; FieldDescriptor field; public FieldAccessNode(ExpressionNode l, String field) { fieldname=field; left=l; } public void setField(FieldDescriptor fd) { field=fd; } public String getFieldName() { return fieldname; } public FieldDescriptor getField() { return field; } public ExpressionNode getExpression() { return left; } public String printNode(int indent) { return left.printNode(indent)+"."+fieldname; } public int kind() { return Kind.FieldAccessNode; } public TypeDescriptor getType() { return getField().getType(); } }