This commit was manufactured by cvs2svn to create tag 'buildscript'.
[IRC.git] /
1 package IR.Tree;
2 import IR.FieldDescriptor;
3 import IR.TypeDescriptor;
4
5 public class FieldAccessNode extends ExpressionNode {
6     ExpressionNode left;
7     String fieldname;
8     FieldDescriptor field;
9
10     public FieldAccessNode(ExpressionNode l, String field) {
11         fieldname=field;
12         left=l;
13     }
14
15     public void setField(FieldDescriptor fd) {
16         field=fd;
17     }
18
19     public String getFieldName() {
20         return fieldname;
21     }
22
23     public FieldDescriptor getField() {
24         return field;
25     }
26
27     public ExpressionNode getExpression() {
28         return left;
29     }
30
31     public String printNode(int indent) {
32         return left.printNode(indent)+"."+fieldname;
33     }
34     public int kind() {
35         return Kind.FieldAccessNode;
36     }
37     public TypeDescriptor getType() {
38         return getField().getType();
39     }
40
41 }