@@ -0,0 +1,1146 @@
+package natlab.Static.interproceduralAnalysis;%0D%0A%0D%0Aimport natlab.toolkits.path.FunctionReference;%0D%0A%0D%0A/**%0D%0A * an element of a call String%0D%0A * immutable%0D%0A * @author ant6n%0D%0A */%0D%0Apublic class Call%3CArg%3E %7B%0D%0A    private FunctionReference functionRef;%0D%0A    private Arg argument;%0D%0A    %0D%0A    public Call(FunctionReference functionRef,Arg argument)%7B%0D%0A        //this.isRecursive = isRecursive;%0D%0A        this.functionRef = functionRef;%0D%0A        this.argument = argument;%0D%0A    %7D%0D%0A    %0D%0A    @Override%0D%0A    public String toString() %7B%0D%0A        return functionRef.getname()+%22(%22+(argument!=null?argument:%22%22)+%22)%22;%0D%0A    %7D%0D%0A    %0D%0A    @Override%0D%0A    public boolean equals(Object obj) %7B%0D%0A         if (obj instanceof Call%3C?%3E)%7B%0D%0A             Call%3C?%3E aCall = (Call%3C?%3E)obj;%0D%0A             return (aCall.functionRef.equals(functionRef))%0D%0A                 && ((aCall.argument != null)?%0D%0A                         aCall.argument.equals(argument)%0D%0A                         :aCall.argument == argument);%0D%0A         %7D else return false;%0D%0A    %7D%0D%0A    %0D%0A    @Override%0D%0A    public int hashCode() %7B%0D%0A        return functionRef.hashCode() + (argument==null?0:argument.hashCode());%0D%0A    %7D%0D%0A%7D

update interproc analysis framework