|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object | +--de.rwth.dfa.jvm.samples.SSAbstraction
Implementation of a stack size abstraction. It can be used to determine the number of elements on the operand stack for each instruction of a JVM method.
| Inner Class Summary | |
protected class |
SSAbstraction.SSFunction
This class models the functions of this abstraction. |
| Inner classes inherited from class de.rwth.dfa.jvm.Abstraction |
Abstraction.Default |
| Field Summary | |
protected de.fub.bytecode.generic.ConstantPoolGen |
cpg
A constant pool generator for the constant pool of the methods class. |
protected CompleteLattice |
lattice
Contains the instance of SSLattice used by this abstraction. |
protected int |
maxStack
The maximal number of elements of the operand stack inside the method of this abstraction. |
| Fields inherited from interface de.rwth.dfa.jvm.Abstraction |
DIRECTION_BACKWARD, DIRECTION_FORWARD, QUANTIFIER_ALL, QUANTIFIER_EXISTS |
| Constructor Summary | |
SSAbstraction(int maxStack,
de.fub.bytecode.classfile.ConstantPool constantPool)
Creates a new SSAbstraction instance. |
|
SSAbstraction(int maxStack,
de.fub.bytecode.generic.ConstantPoolGen constantPoolGen)
Creates a new SSAbstraction instance. |
|
| Method Summary | |
Function |
getAbstract(de.fub.bytecode.generic.InstructionHandle ih)
Returns a new instance of SSFunction. |
Function |
getAbstract(InstructionHandleVector ihv)
Returns the value of the default implementation in Abstraction.Default. |
int |
getDirection()
Returns DIRECTION_FORWARD. |
java.lang.Object |
getInitialValue(de.fub.bytecode.generic.InstructionHandle o,
boolean isRoot)
Determined the initial stack size at an instruction. |
java.lang.Object |
getInitialValue(InstructionHandleVector ihv,
boolean isRoot)
Returns the value of the default implementation in Abstraction.Default. |
Lattice |
getLattice()
Returns this abstractions instance of SSLattice. |
int |
getQuantifier()
Returns QUANTIFIER_ALL |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
protected CompleteLattice lattice
protected int maxStack
protected de.fub.bytecode.generic.ConstantPoolGen cpg
| Constructor Detail |
public SSAbstraction(int maxStack,
de.fub.bytecode.generic.ConstantPoolGen constantPoolGen)
SSAbstraction instance.maxStack - an int value: The maximal number of elements on the
operand stack of the method to consider.constantPoolGen - a ConstantPoolGen value: The constant pool
generator for the method.
public SSAbstraction(int maxStack,
de.fub.bytecode.classfile.ConstantPool constantPool)
SSAbstraction instance.maxStack - an int value: The maximal number of elements on the
operand stack of the method to consider.constantPool - a ConstantPool value: The constant pool for the
method.| Method Detail |
public int getDirection()
DIRECTION_FORWARD.getDirection in interface Abstractionint valuepublic int getQuantifier()
QUANTIFIER_ALLgetQuantifier in interface Abstractionint valuepublic Lattice getLattice()
getLattice in interface AbstractionLattice value
public java.lang.Object getInitialValue(de.fub.bytecode.generic.InstructionHandle o,
boolean isRoot)
getInitialValue in interface Abstractiono - an InstructionHandle valueisRoot - a boolean valueObject valuepublic Function getAbstract(de.fub.bytecode.generic.InstructionHandle ih)
SSFunction.getAbstract in interface Abstractionih - an InstructionHandle valueFunction value
public java.lang.Object getInitialValue(InstructionHandleVector ihv,
boolean isRoot)
Abstraction.Default.getInitialValue in interface Abstractionihv - an InstructionHandleVector valueisRoot - a boolean valueObject valuepublic Function getAbstract(InstructionHandleVector ihv)
Abstraction.Default.getAbstract in interface Abstractionihv - an InstructionHandleVector valueFunction value
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||