|
|||||||||
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 Abstraction
int
valuepublic int getQuantifier()
QUANTIFIER_ALL
getQuantifier
in interface Abstraction
int
valuepublic Lattice getLattice()
getLattice
in interface Abstraction
Lattice
valuepublic java.lang.Object getInitialValue(de.fub.bytecode.generic.InstructionHandle o, boolean isRoot)
getInitialValue
in interface Abstraction
o
- an InstructionHandle
valueisRoot
- a boolean
valueObject
valuepublic Function getAbstract(de.fub.bytecode.generic.InstructionHandle ih)
SSFunction
.getAbstract
in interface Abstraction
ih
- an InstructionHandle
valueFunction
valuepublic java.lang.Object getInitialValue(InstructionHandleVector ihv, boolean isRoot)
Abstraction.Default
.getInitialValue
in interface Abstraction
ihv
- an InstructionHandleVector
valueisRoot
- a boolean
valueObject
valuepublic Function getAbstract(InstructionHandleVector ihv)
Abstraction.Default
.getAbstract
in interface Abstraction
ihv
- an InstructionHandleVector
valueFunction
value
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |