changes
[IRC.git] / Robust / src / IR / Flat / FlatElementNode.java
1 package IR.Flat;
2 import IR.FieldDescriptor;
3
4 public class FlatElementNode extends FlatNode {
5     TempDescriptor src;
6     TempDescriptor dst;
7     TempDescriptor index;
8     
9     public FlatElementNode(TempDescriptor src, TempDescriptor index, TempDescriptor dst) {
10         this.index=index;
11         this.src=src;
12         this.dst=dst;
13     }
14
15     public TempDescriptor getIndex() {
16         return index;
17     }
18
19     public TempDescriptor getSrc() {
20         return src;
21     }
22
23     public TempDescriptor getDst() {
24         return dst;
25     }
26
27     public String toString() {
28         return dst.toString()+"="+src.toString()+"["+index.toString()+"]";
29     }
30
31     public int kind() {
32         return FKind.FlatElementNode;
33     }
34
35     public TempDescriptor [] writesTemps() {
36         return new TempDescriptor[] {dst};
37     }
38
39     public TempDescriptor [] readsTemps() {
40         return new TempDescriptor[] {src,index};
41     }
42 }