public class CallSite
extends java.lang.Object
Constructor and Description |
---|
CallSite(int id,
FunctionCall fcall,
IPANode caller,
IPANode callee)
Constructs a call site with the given function call, caller node, and
callee node.
|
Modifier and Type | Method and Description |
---|---|
Symbol |
argumentToParameter(Expression arg)
Converts the given argument to the corresponding parameter.
|
void |
clean()
Removes the IN/OUT data.
|
boolean |
containsFunctionPointer()
Checks if the function call is using a function pointer variable.
|
boolean |
containsVarArg()
Checks if the function takes variable argument list.
|
java.util.List<Expression> |
getArguments()
Returns the list of the call site's arguments.
|
IPANode |
getCallee()
Returns the called node.
|
IPANode |
getCaller()
Returns the calling node.
|
FunctionCall |
getFunctionCall()
Returns the function call associated with this call site.
|
int |
getID()
Returns the ID of this call site.
|
java.util.List<Expression> |
getIDArguments()
Returns a list of arguments with Identifier type.
|
java.lang.String |
getName()
Returns the string name of the function name.
|
java.util.List<Expression> |
getNormArguments()
Returns the list of normalized identifier arguments.
|
java.util.List<Symbol> |
getParameters()
Returns the list of the callee's parameters.
|
Statement |
getStatement()
Returns the statement containing the function call.
|
CompoundStatement |
getTempAssignments()
Returns the list of temporary assignments stored in a compound statement.
|
<T extends Domain> |
in()
Returns the IN data.
|
void |
in(Domain domain)
Sets the IN data with the given Domain object.
|
boolean |
isLibraryCall()
Checks if there is a matching function body for the call site.
|
<T extends Domain> |
out()
Returns the OUT data.
|
void |
out(Domain domain)
Sets the OUT data with the given Domain object.
|
Expression |
parameterToArgument(Symbol param)
Converts the given parameter to the corresponding argument.
|
java.lang.String |
toString()
Returns the string dump of this call site.
|
public CallSite(int id, FunctionCall fcall, IPANode caller, IPANode callee)
public Statement getStatement()
public IPANode getCallee()
public IPANode getCaller()
public FunctionCall getFunctionCall()
public int getID()
public <T extends Domain> T in()
public <T extends Domain> T out()
public void in(Domain domain)
public void out(Domain domain)
public void clean()
public boolean containsVarArg()
public boolean isLibraryCall()
public boolean containsFunctionPointer()
public java.lang.String getName()
public java.util.List<Expression> getIDArguments()
public java.util.List<Expression> getArguments()
public java.util.List<Symbol> getParameters()
public Symbol argumentToParameter(Expression arg)
public Expression parameterToArgument(Symbol param)
public CompoundStatement getTempAssignments()
public java.util.List<Expression> getNormArguments()
public java.lang.String toString()
toString
in class java.lang.Object