public class JvmStackLocation extends JvmMemoryLocation
JvmStackLocation is a memory location at the operand stack at a certain program point.
Indexing starts from the top of the stack.| Modifier and Type | Field and Description |
|---|---|
int |
index |
argNode| Constructor and Description |
|---|
JvmStackLocation(ArgProgramLocationDependentAbstractState<JvmCfaNode,JvmCfaEdge,MethodSignature> argNode,
int index)
Create a stack location at a specific program location.
|
JvmStackLocation(int index)
Create a stack location unspecific to a program location.
|
| Modifier and Type | Method and Description |
|---|---|
JvmStackLocation |
copy()
Creates its copy.
|
boolean |
equals(java.lang.Object obj) |
<T extends LatticeAbstractState> |
extractValueOrDefault(JvmAbstractState abstractState,
T defaultValue)
Returns an
AbstractState representing value stored at the MemoryLocation in the input AbstractState. |
int |
getIndex()
Returns the stack index from the top.
|
int |
hashCode() |
java.lang.String |
toString() |
getArgNode, getProgramLocation, setArgNode, setProgramLocationpublic JvmStackLocation(int index)
index - a stack element index from the toppublic JvmStackLocation(ArgProgramLocationDependentAbstractState<JvmCfaNode,JvmCfaEdge,MethodSignature> argNode, int index)
argNode - an ARG nodeindex - a stack element index from the toppublic JvmStackLocation copy()
MemoryLocationcopy in class JvmMemoryLocationpublic <T extends LatticeAbstractState> T extractValueOrDefault(JvmAbstractState abstractState, T defaultValue)
MemoryLocationAbstractState representing value stored at the MemoryLocation in the input AbstractState.
If the AbstractState does not specify a ValueT at the MemoryLocation, the default value is returned.extractValueOrDefault in class MemoryLocation<JvmCfaNode,JvmCfaEdge,MethodSignature,LatticeAbstractState,JvmAbstractState>public int getIndex()
public boolean equals(java.lang.Object obj)
equals in class MemoryLocation<JvmCfaNode,JvmCfaEdge,MethodSignature,LatticeAbstractState,JvmAbstractState>public int hashCode()
hashCode in class MemoryLocation<JvmCfaNode,JvmCfaEdge,MethodSignature,LatticeAbstractState,JvmAbstractState>public java.lang.String toString()
toString in class java.lang.Object