1 package polyglot.ast; 2 3 import polyglot.types.ProcedureInstance; 4 import java.util.List; 5 6 /** 7 * A <code>ProcedureCall</code> is an interface representing a 8 * method or constructor call. 9 */ 10 public interface ProcedureCall extends Term 11 { 12 /** 13 * The call's actual arguments. 14 * @return A list of {@link polyglot.ast.Expr Expr}. 15 */ 16 List arguments(); 17 18 /** 19 * Set the call's actual arguments. 20 * @param arguments A list of {@link polyglot.ast.Expr Expr}. 21 */ 22 ProcedureCall arguments(List arguments); 23 24 /** 25 * The type object of the method we are calling. This is, generally, only 26 * valid after the type-checking pass. 27 */ 28 ProcedureInstance procedureInstance(); 29 } 30