|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.markcrocker.purifier.Frame
This class represents a JVM execution frame; that means, a local variable array and an operand stack.
Field Summary | |
private LocalVariables |
locals
|
private static org.apache.log4j.Logger |
log
|
private OperandStack |
stack
|
Constructor Summary | |
Frame(int maxLocals,
int maxStack)
Constructs an empty Frame |
|
Frame(int exceptionIndex,
org.apache.bcel.generic.MethodGen mg,
org.apache.bcel.generic.ConstantPoolGen cpg)
Construct pre-initialized Frame suitable for Method invokation from an Exception. |
|
Frame(LocalVariables locals,
OperandStack stack)
Construct a Frame from existing LocalVariables and OperandStack |
|
Frame(org.apache.bcel.generic.MethodGen mg,
org.apache.bcel.generic.ConstantPoolGen cpg)
Construct pre-initialized Frame suitable for normal Method invokation. |
|
Frame(org.apache.bcel.generic.MethodGen mg,
org.apache.bcel.generic.ConstantPoolGen cpg,
boolean exceptionEntry)
Construct pre-initialized Frame suitable for various Method invokation entry points. |
Method Summary | |
protected java.lang.Object |
clone()
|
static org.apache.bcel.classfile.StackMapType |
convertSignature2StackMapType(java.lang.String signature,
org.apache.bcel.generic.ConstantPoolGen cpg)
|
static org.apache.bcel.classfile.StackMapType |
convertType2StackMapType(byte type,
java.lang.String signature,
org.apache.bcel.generic.ConstantPoolGen cpg)
|
static org.apache.bcel.classfile.StackMapType |
convertType2StackMapType(org.apache.bcel.generic.Type type,
org.apache.bcel.generic.ConstantPoolGen cpg)
Convert org.apache.bcel.generic.Type into a StackMapType. |
boolean |
equals(java.lang.Object o)
|
Frame |
getClone()
Returns a properly cast clone of Frame |
LocalVariables |
getLocals()
|
OperandStack |
getStack()
|
org.apache.bcel.classfile.StackMapEntry |
getStackMapEntry(int byteCodeOffset,
org.apache.bcel.classfile.ConstantPool cp)
Generate a StackMapEntry from the contents of the Frame. |
private void |
indent(java.lang.StringBuffer sb,
java.lang.String indentString,
int indentLevel)
|
void |
setLocals(LocalVariables locals)
Replace the LocalVariables stored in this frame with a copy of another set of LocalVariables. |
java.lang.String |
toString()
Returns a String representation of the Frame instance. |
java.lang.String |
toString(java.lang.String indentString,
int indentLevel)
Returns a String representation of the Frame instance, prepending each line with the indent string. |
Methods inherited from class java.lang.Object |
|
Field Detail |
private static org.apache.log4j.Logger log
private LocalVariables locals
private OperandStack stack
Constructor Detail |
public Frame(int maxLocals, int maxStack)
public Frame(LocalVariables locals, OperandStack stack)
public Frame(org.apache.bcel.generic.MethodGen mg, org.apache.bcel.generic.ConstantPoolGen cpg)
public Frame(org.apache.bcel.generic.MethodGen mg, org.apache.bcel.generic.ConstantPoolGen cpg, boolean exceptionEntry)
exceptionEntry
- true when constructing a frame for an Exception entry point where it cannot be known what the LocalVariables will be until after the corresponding try-catch block has been investigated. Use false for normal method entry invokation.public Frame(int exceptionIndex, org.apache.bcel.generic.MethodGen mg, org.apache.bcel.generic.ConstantPoolGen cpg)
Method Detail |
protected java.lang.Object clone()
clone
in class java.lang.Object
public Frame getClone()
public LocalVariables getLocals()
public void setLocals(LocalVariables locals)
public OperandStack getStack()
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public static org.apache.bcel.classfile.StackMapType convertType2StackMapType(org.apache.bcel.generic.Type type, org.apache.bcel.generic.ConstantPoolGen cpg)
public static org.apache.bcel.classfile.StackMapType convertSignature2StackMapType(java.lang.String signature, org.apache.bcel.generic.ConstantPoolGen cpg)
public static org.apache.bcel.classfile.StackMapType convertType2StackMapType(byte type, java.lang.String signature, org.apache.bcel.generic.ConstantPoolGen cpg)
public org.apache.bcel.classfile.StackMapEntry getStackMapEntry(int byteCodeOffset, org.apache.bcel.classfile.ConstantPool cp)
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String toString(java.lang.String indentString, int indentLevel)
indentString
- String to prepend to each line to allow indent
matching.indentLevel
- How many copies of indent string to append.private void indent(java.lang.StringBuffer sb, java.lang.String indentString, int indentLevel)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |