public final class CallContext extends Object implements ICallContext<CallContext>
This particular context sensitivity strategy distinguishes between abstract states that have different possible values of 'this'.
It also distinguishes between abstract states that have different values for the special function arguments (see SpecialArgs).
| Constructor and Description |
|---|
CallContext(State callee_state,
Function f)
Constructs a new initial context.
|
CallContext(State callee_state,
Function f,
CallContext caller_context,
AbstractNode call_node,
String property,
SpecialArgs sa)
Constructs a new context.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object obj)
Checks whether this context is equal to the given object.
|
int |
hashCode()
Computes a hash code for this context.
|
boolean |
isContextSensitiveOn(AbstractNode n)
Returns true if the context is sensitive on the block that belongs to node.
|
CallContext |
peel()
Peels a single layer of the for-in context sensitivity nodes off.
|
BlockAndContext<CallContext> |
toEntry(BasicBlock b)
Returns the entry of the nearest enclosing basic block and context.
|
String |
toString()
Returns a description of this call context.
|
public CallContext(State callee_state, Function f)
callee_state - callee statef - callee functionpublic CallContext(State callee_state, Function f, CallContext caller_context, AbstractNode call_node, String property, SpecialArgs sa)
callee_state - callee statef - callee functioncaller_context - caller context, null if nonecall_node - call node, null if noneproperty - property name, null if nonesa - special arguments info, null if nonepublic boolean equals(Object obj)
ICallContextequals in interface ICallContext<CallContext>equals in class Objectpublic int hashCode()
ICallContexthashCode in interface ICallContext<CallContext>hashCode in class Objectpublic boolean isContextSensitiveOn(AbstractNode n)
public CallContext peel()
public BlockAndContext<CallContext> toEntry(BasicBlock b)
ICallContexttoEntry in interface ICallContext<CallContext>public String toString()
ICallContexttoString in interface ICallContext<CallContext>toString in class ObjectCopyright © 2012 Aarhus University