package st; import java.util.ArrayList; public class MethodInstance extends AbstractInstance { private ArrayList args; // the list of arguments private ArrayList lvars; // the list of local variables private TypeEnum rtrn; // the returned type public MethodInstance(String name, TypeEnum rtrn) { super(name, TypeEnum.method); this.lvars = new ArrayList<>(); this.args = new ArrayList<>(); this.rtrn = rtrn; } public ArrayList getArguments() { return this.args; } public ArrayList getLocals() { return this.lvars; } public TypeEnum getReturn() { return this.rtrn; } protected void addArgument(TypeInstance arg) { this.args.add(arg); this.lvars.add(arg); } protected void addLocal(TypeInstance lvar) { this.lvars.add(lvar); } }