|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectnet.sf.retrotranslator.transformer.AbstractMethodVisitor
net.sf.retrotranslator.transformer.InstantiationAnalysisVisitor.InstantiationAnalysisMethodVisitor
private class InstantiationAnalysisVisitor.InstantiationAnalysisMethodVisitor
| Field Summary | |
|---|---|
private boolean |
active
|
private int |
allocationIndex
|
private InstantiationFrame |
currentFrame
|
private InstantiationPoint |
currentPoint
|
private int |
duplicationIndex
|
private java.util.Map<Label,InstantiationFrame> |
frames
|
private int |
initializationIndex
|
private java.lang.String |
methodDesc
|
private java.lang.String |
methodName
|
private java.util.List<InstantiationPoint> |
points
|
| Fields inherited from class net.sf.retrotranslator.transformer.AbstractMethodVisitor |
|---|
mv |
| Constructor Summary | |
|---|---|
InstantiationAnalysisVisitor.InstantiationAnalysisMethodVisitor(MethodVisitor visitor,
java.lang.String methodName,
java.lang.String methodDesc)
|
|
| Method Summary | |
|---|---|
protected void |
flush()
|
private void |
saveFrame(Label label)
|
private void |
saveFrames(Label label,
Label[] labels)
|
void |
visitEnd()
Visits the end of the method. |
void |
visitInsn(int opcode)
Visits a zero operand instruction. |
void |
visitJumpInsn(int opcode,
Label label)
Visits a jump instruction. |
void |
visitLabel(Label label)
Visits a label. |
void |
visitLookupSwitchInsn(Label dflt,
int[] keys,
Label[] labels)
Visits a LOOKUPSWITCH instruction. |
void |
visitMethodInsn(int opcode,
java.lang.String owner,
java.lang.String name,
java.lang.String desc)
Visits a method instruction. |
void |
visitTableSwitchInsn(int min,
int max,
Label dflt,
Label[] labels)
Visits a TABLESWITCH instruction. |
void |
visitTypeInsn(int opcode,
java.lang.String desc)
Visits a type instruction. |
| Methods inherited from class net.sf.retrotranslator.transformer.AbstractMethodVisitor |
|---|
visitAnnotation, visitAnnotationDefault, visitAttribute, visitCode, visitFieldInsn, visitIincInsn, visitIntInsn, visitLdcInsn, visitLineNumber, visitLocalVariable, visitMaxs, visitMultiANewArrayInsn, visitParameterAnnotation, visitTryCatchBlock, visitVarInsn |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private final java.util.List<InstantiationPoint> points
private final java.util.Map<Label,InstantiationFrame> frames
private InstantiationFrame currentFrame
private final java.lang.String methodName
private final java.lang.String methodDesc
private boolean active
private InstantiationPoint currentPoint
private int allocationIndex
private int duplicationIndex
private int initializationIndex
| Constructor Detail |
|---|
public InstantiationAnalysisVisitor.InstantiationAnalysisMethodVisitor(MethodVisitor visitor,
java.lang.String methodName,
java.lang.String methodDesc)
| Method Detail |
|---|
protected void flush()
flush in class AbstractMethodVisitorpublic void visitLabel(Label label)
MethodVisitor
visitLabel in interface MethodVisitorvisitLabel in class AbstractMethodVisitorlabel - a Label object.
public void visitJumpInsn(int opcode,
Label label)
MethodVisitor
visitJumpInsn in interface MethodVisitorvisitJumpInsn in class AbstractMethodVisitoropcode - the opcode of the type instruction to be visited. This
opcode is either IFEQ, IFNE, IFLT, IFGE, IFGT, IFLE, IF_ICMPEQ,
IF_ICMPNE, IF_ICMPLT, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ACMPEQ,
IF_ACMPNE, GOTO, JSR, IFNULL or IFNONNULL.label - the operand of the instruction to be visited. This operand
is a label that designates the instruction to which the jump
instruction may jump.
public void visitLookupSwitchInsn(Label dflt,
int[] keys,
Label[] labels)
MethodVisitor
visitLookupSwitchInsn in interface MethodVisitorvisitLookupSwitchInsn in class AbstractMethodVisitordflt - beginning of the default handler block.keys - the values of the keys.labels - beginnings of the handler blocks. labels[i] is
the beginning of the handler block for the keys[i] key.
public void visitTableSwitchInsn(int min,
int max,
Label dflt,
Label[] labels)
MethodVisitor
visitTableSwitchInsn in interface MethodVisitorvisitTableSwitchInsn in class AbstractMethodVisitormin - the minimum key value.max - the maximum key value.dflt - beginning of the default handler block.labels - beginnings of the handler blocks. labels[i] is
the beginning of the handler block for the min + i key.
private void saveFrames(Label label,
Label[] labels)
private void saveFrame(Label label)
public void visitTypeInsn(int opcode,
java.lang.String desc)
MethodVisitor
visitTypeInsn in interface MethodVisitorvisitTypeInsn in class AbstractMethodVisitoropcode - the opcode of the type instruction to be visited. This
opcode is either NEW, ANEWARRAY, CHECKCAST or INSTANCEOF.desc - the operand of the instruction to be visited. This operand is
must be a fully qualified class name in internal form, or the type
descriptor of an array type (see Type).public void visitInsn(int opcode)
MethodVisitor
visitInsn in interface MethodVisitorvisitInsn in class AbstractMethodVisitoropcode - the opcode of the instruction to be visited. This opcode is
either NOP, ACONST_NULL, ICONST_M1, ICONST_0, ICONST_1, ICONST_2,
ICONST_3, ICONST_4, ICONST_5, LCONST_0, LCONST_1, FCONST_0,
FCONST_1, FCONST_2, DCONST_0, DCONST_1, IALOAD, LALOAD, FALOAD,
DALOAD, AALOAD, BALOAD, CALOAD, SALOAD, IASTORE, LASTORE, FASTORE,
DASTORE, AASTORE, BASTORE, CASTORE, SASTORE, POP, POP2, DUP,
DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, SWAP, IADD, LADD, FADD,
DADD, ISUB, LSUB, FSUB, DSUB, IMUL, LMUL, FMUL, DMUL, IDIV, LDIV,
FDIV, DDIV, IREM, LREM, FREM, DREM, INEG, LNEG, FNEG, DNEG, ISHL,
LSHL, ISHR, LSHR, IUSHR, LUSHR, IAND, LAND, IOR, LOR, IXOR, LXOR,
I2L, I2F, I2D, L2I, L2F, L2D, F2I, F2L, F2D, D2I, D2L, D2F, I2B,
I2C, I2S, LCMP, FCMPL, FCMPG, DCMPL, DCMPG, IRETURN, LRETURN,
FRETURN, DRETURN, ARETURN, RETURN, ARRAYLENGTH, ATHROW,
MONITORENTER, or MONITOREXIT.
public void visitMethodInsn(int opcode,
java.lang.String owner,
java.lang.String name,
java.lang.String desc)
MethodVisitor
visitMethodInsn in interface MethodVisitorvisitMethodInsn in class AbstractMethodVisitoropcode - the opcode of the type instruction to be visited. This
opcode is either INVOKEVIRTUAL, INVOKESPECIAL, INVOKESTATIC or
INVOKEINTERFACE.owner - the internal name of the method's owner class (see getInternalName).name - the method's name.desc - the method's descriptor (see Type).public void visitEnd()
MethodVisitor
visitEnd in interface MethodVisitorvisitEnd in class AbstractMethodVisitor
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||