99b6783bc76d6046be29e289102e70faa6e989d4
[IRC.git] / Robust / src / IR / Tree / CreateObjectNode.java
1 package IR.Tree;
2 import java.util.Vector;
3 import IR.TypeDescriptor;
4
5 public class CreateObjectNode extends ExpressionNode {
6     TypeDescriptor td;
7     Vector argumentlist;
8
9     public CreateObjectNode(TypeDescriptor type) {
10         td=type;
11         argumentlist=new Vector();
12     }
13     public void addArgument(ExpressionNode en) {
14         argumentlist.add(en);
15     }
16
17     public String printNode(int indent) {
18         String st="new "+td.toString()+"(";
19         for(int i=0;i<argumentlist.size();i++) {
20             ExpressionNode en=(ExpressionNode)argumentlist.get(i);
21             st+=en.printNode(indent);
22             if ((i+1)!=argumentlist.size())
23                 st+=", ";
24         }
25         return st+")";
26     }
27
28     public int kind() {
29         return Kind.CreateObjectNode;
30     }
31 }