| Modifier and Type | Field and Description |
|---|---|
| protected ClassPool | |
| protected ConstPool | |
| protected TypeData[] | |
| protected String | |
| protected int | |
| protected TypeData[] |
| Access | Constructor and Description |
|---|---|
| public | |
| public |
| Modifier and Type | Method and Description |
|---|---|
| private void | |
| private void | |
| private int | |
| private int | |
| private void | |
| private int | |
| private int | |
| private int | |
| private int | |
| private void | |
| private int | |
| private int | |
| protected int | Returns: the size of the instruction at POS.the position of the instruction. pos, byte[] code)Does abstract interpretation on the given bytecode instruction. |
| private int | |
| private int | |
| private int | |
| private int | |
| private int | |
| private int | |
| private void | |
| private void | |
| private int | |
| private int | |
| private int | |
| private int | |
| private static String | |
| private void | |
| private void | |
| protected void | |
| protected void | |
| protected void | |
| protected void | visitLookupSwitch(int
the position of LOOKUPSWITCH pos, byte[] bytecode code, int the number of case labels n, int the position of the table of pairs of a value and a branch target. pairsPos, int the offset to the default branch target. defaultOffset)
|
| protected void | |
| protected void | |
| protected void | visitTableSwitch(int
the position of TABLESWITCH pos, byte[] bytecode code, int the number of case labels n, int the position of the branch-target table. offsetPos, int the offset to the default branch target. defaultOffset)
|
| protected void |
| classPool | back to summary |
|---|---|
| protected ClassPool classPool | |
| cpool | back to summary |
|---|---|
| protected ConstPool cpool | |
| localsTypes | back to summary |
|---|---|
| protected TypeData[] localsTypes | |
| returnType | back to summary |
|---|---|
| protected String returnType | |
| stackTop | back to summary |
|---|---|
| protected int stackTop | |
| stackTypes | back to summary |
|---|---|
| protected TypeData[] stackTypes | |
| Tracer | back to summary |
|---|---|
| public Tracer(ClassPool classes, ConstPool cp, int maxStack, int maxLocals, String retType) | |
| Tracer | back to summary |
|---|---|
| public Tracer(Tracer t) | |
| checkParamTypes | back to summary |
|---|---|
| private void checkParamTypes(String desc, int i) throws BadBytecode | |
| constructorCalled | back to summary |
|---|---|
| private void constructorCalled(TypeData target, int offset) | |
| doALOAD | back to summary |
|---|---|
| private int doALOAD(int localVar) | |
| doASTORE | back to summary |
|---|---|
| private int doASTORE(int index) | |
| doDUP_XX | back to summary |
|---|---|
| private void doDUP_XX(int delta, int len) | |
| doGetField | back to summary |
|---|---|
| private int doGetField(int pos, byte[] code, boolean notStatic) throws BadBytecode | |
| doInvokeDynamic | back to summary |
|---|---|
| private int doInvokeDynamic(int pos, byte[] code) throws BadBytecode | |
| doInvokeIntfMethod | back to summary |
|---|---|
| private int doInvokeIntfMethod(int pos, byte[] code) throws BadBytecode | |
| doInvokeMethod | back to summary |
|---|---|
| private int doInvokeMethod(int pos, byte[] code, boolean notStatic) throws BadBytecode | |
| doLDC | back to summary |
|---|---|
| private void doLDC(int index) | |
| doMultiANewArray | back to summary |
|---|---|
| private int doMultiANewArray(int pos, byte[] code) | |
| doNEWARRAY | back to summary |
|---|---|
| private int doNEWARRAY(int pos, byte[] code) | |
| doOpcode | back to summary |
|---|---|
| protected int doOpcode(int pos, byte[] code) throws BadBytecode Does abstract interpretation on the given bytecode instruction. It records whether or not a local variable (i.e. register) is accessed. If the instruction requires that a local variable or a stack element has a more specific type, this method updates the type of it.
| |
| doOpcode0_53 | back to summary |
|---|---|
| private int doOpcode0_53(int pos, byte[] code, int op) throws BadBytecode | |
| doOpcode148_201 | back to summary |
|---|---|
| private int doOpcode148_201(int pos, byte[] code, int op) throws BadBytecode | |
| doOpcode54_95 | back to summary |
|---|---|
| private int doOpcode54_95(int pos, byte[] code, int op) throws BadBytecode | |
| doOpcode96_147 | back to summary |
|---|---|
| private int doOpcode96_147(int pos, byte[] code, int op) | |
| doPutField | back to summary |
|---|---|
| private int doPutField(int pos, byte[] code, boolean notStatic) throws BadBytecode | |
| doWIDE | back to summary |
|---|---|
| private int doWIDE(int pos, byte[] code) throws BadBytecode | |
| doWIDE_STORE | back to summary |
|---|---|
| private void doWIDE_STORE(int pos, byte[] code, TypeData type) | |
| doWIDE_XLOAD | back to summary |
|---|---|
| private void doWIDE_XLOAD(int pos, byte[] code, TypeData type) | |
| doXLOAD | back to summary |
|---|---|
| private int doXLOAD(TypeData type, byte[] code, int pos) | |
| doXLOAD | back to summary |
|---|---|
| private int doXLOAD(int localVar, TypeData type) | |
| doXSTORE | back to summary |
|---|---|
| private int doXSTORE(int pos, byte[] code, TypeData type) | |
| doXSTORE | back to summary |
|---|---|
| private int doXSTORE(int index, TypeData type) | |
| getFieldClassName | back to summary |
|---|---|
| private static String getFieldClassName(String desc, int index) | |
| pushMemberType | back to summary |
|---|---|
| private void pushMemberType(String descriptor) | |
| setFieldTarget | back to summary |
|---|---|
| private void setFieldTarget(boolean notStatic, int index) throws BadBytecode | |
| visitBranch | back to summary |
|---|---|
| protected void visitBranch(int pos, byte[] code, int offset) throws BadBytecode | |
| visitGoto | back to summary |
|---|---|
| protected void visitGoto(int pos, byte[] code, int offset) throws BadBytecode | |
| visitJSR | back to summary |
|---|---|
| protected void visitJSR(int pos, byte[] code) throws BadBytecode Invoked when the visited instruction is jsr. Java6 or later does not allow using RET. | |
| visitLookupSwitch | back to summary |
|---|---|
protected void visitLookupSwitch(int pos, byte[] code, int n, int pairsPos, int defaultOffset) throws BadBytecode
| |
| visitRET | back to summary |
|---|---|
| protected void visitRET(int pos, byte[] code) throws BadBytecode Invoked when the visited instruction is ret or wide ret. Java6 or later does not allow using RET. | |
| visitReturn | back to summary |
|---|---|
| protected void visitReturn(int pos, byte[] code) throws BadBytecode | |
| visitTableSwitch | back to summary |
|---|---|
protected void visitTableSwitch(int pos, byte[] code, int n, int offsetPos, int defaultOffset) throws BadBytecode
| |
| visitThrow | back to summary |
|---|---|
| protected void visitThrow(int pos, byte[] code) throws BadBytecode | |