|
TechTrader Bytecode Toolkit | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.techtrader.modules.tools.bytecode.BCEntity | +--com.techtrader.modules.tools.bytecode.Attribute | +--com.techtrader.modules.tools.bytecode.Code
Representation of a code block of a class; a Code instance can only
be obtained from a BCMethod. The methods of this class mimic those of
the same name in the ListIterator
class. Note that
the size and index information of the Code block will change as opcodes
are added.
Code blocks are usually obtained from a BCMethod, but can also be constructed via the default Constructor. Blocks created this way can be used to provide template instructions to the various search/replace methods in this class.
The Code class contains methods named after each JVM instruction, each of which adds the matching instruction to the code block at the current iterator position. There are also many pseudo-instruction methods that do not have a corresponding JVM opcode, but are provided for convenience when the exact opcode is difficult to determine at compile time. Unlike the other opcode methods, these convenience methods have javadoc comments so that they are easy to pick out; they should be skimmed to get an idea of the functionality that each provides. Also note that many Instructions are able to 'morph' their opcode on the fly as the arguments to the instrcution change. Thus the developer can initially call, for example, the aload_1 opcode, but later change the type to load to 'int', and the opcode will automatically morph to iload_1.
Fields inherited from class com.techtrader.modules.tools.bytecode.Attribute |
_nameIndex,
_owner |
Constructor Summary | |
|
Code()
The public constructor is for creating template code modules that can be used to produce Instructions to be used in matching for various search() and replace() methods. |
protected |
Code(int nameIndex,
BCEntity owner)
|
Method Summary | |
ArrayLoadInstruction |
aaload()
|
ArrayStoreInstruction |
aastore()
|
void |
acceptVisit(BCVisitor visit)
Accept a visit from a BCVisitor, calling the appropriate methods to notify the visitor that it has entered this entity, and to provide it with the proper callbacks for each sub-entity owned by this object. |
ConstantInstruction |
aconst_null()
|
MathInstruction |
add()
This is a convenience method to invoke the proper math instruction if the type is not known at compile time. |
ExceptionHandler |
addExceptionHandler()
Add an exception handler to this code block. |
ExceptionHandler |
addExceptionHandler(Instruction tryStart,
Instruction tryEnd,
Instruction handlerStart,
Class catchType)
Add an exception handler to this code block. |
ExceptionHandler |
addExceptionHandler(Instruction tryStart,
Instruction tryEnd,
Instruction handlerStart,
String catchType)
Add an exception handler to this code block. |
void |
afterLast()
Set the position of the instruction iterator to after the last opcode. |
LoadInstruction |
aload_0()
|
LoadInstruction |
aload_1()
|
LoadInstruction |
aload_2()
|
LoadInstruction |
aload_3()
|
LoadInstruction |
aload()
|
MathInstruction |
and()
This is a convenience method to invoke the proper math instruction if the type is not known at compile time. |
ClassInstruction |
anewarray()
|
ReturnInstruction |
areturn()
|
Instruction |
arraylength()
|
ArrayLoadInstruction |
arrayload()
This is a convenience method to invoke the proper array load instruction if the type is not known at compile time. |
ArrayStoreInstruction |
arraystore()
This is a convenience method to invoke the proper array store instruction if the type is not known at compile time. |
StoreInstruction |
astore_0()
|
StoreInstruction |
astore_1()
|
StoreInstruction |
astore_2()
|
StoreInstruction |
astore_3()
|
StoreInstruction |
astore()
|
Instruction |
athrow()
|
ArrayLoadInstruction |
baload()
|
ArrayStoreInstruction |
bastore()
|
void |
before(Instruction ins)
Position the iterator just before the given instruction. |
void |
before(int index)
Place the iterator before the given list index. |
void |
beforeFirst()
Reset the position of the instruction iterator to the first opcode. |
ConstantInstruction |
bipush()
|
void |
calculateMaxLocals()
Ask the code to figure out the number of locals it needs based on the instructions used and the parameters of the method this code block is a part of. |
void |
calculateMaxStack()
Ask the code to figure out the maximum stack depth it needs the instructions used. |
ArrayLoadInstruction |
caload()
|
ArrayStoreInstruction |
castore()
|
ClassInstruction |
checkcast()
|
ClassConstantInstruction |
classconstant()
Loads a Class constant onto the stack. |
void |
clearExceptionHandlers()
Clear all exception handlers. |
CmpInstruction |
cmp()
Convenience method to use when the types being compared are not known at compile time. |
ConstantInstruction |
constant()
Load some constant onto the stack. |
ConvertInstruction |
convert()
This is a convenience method to invoke the proper conversion instruction if the types being converted are not known at compile time. |
protected void |
copy(Attribute attr)
Copies the instructions of the given code block to this one; used to import methods from other classes or copy methods within a class. |
ConvertInstruction |
d2f()
|
ConvertInstruction |
d2i()
|
ConvertInstruction |
d2l()
|
MathInstruction |
dadd()
|
ArrayLoadInstruction |
daload()
|
ArrayStoreInstruction |
dastore()
|
CmpInstruction |
dcmpg()
|
CmpInstruction |
dcmpl()
|
ConstantInstruction |
dconst_0()
|
ConstantInstruction |
dconst_1()
|
MathInstruction |
ddiv()
|
MathInstruction |
div()
This is a convenience method to invoke the proper math instruction if the type is not known at compile time. |
LoadInstruction |
dload_0()
|
LoadInstruction |
dload_1()
|
LoadInstruction |
dload_2()
|
LoadInstruction |
dload_3()
|
LoadInstruction |
dload()
|
MathInstruction |
dmul()
|
MathInstruction |
dneg()
|
MathInstruction |
drem()
|
ReturnInstruction |
dreturn()
|
StoreInstruction |
dstore_0()
|
StoreInstruction |
dstore_1()
|
StoreInstruction |
dstore_2()
|
StoreInstruction |
dstore_3()
|
StoreInstruction |
dstore()
|
MathInstruction |
dsub()
|
StackInstruction |
dup_x1()
|
StackInstruction |
dup_x2()
|
StackInstruction |
dup()
|
StackInstruction |
dup2_x1()
|
StackInstruction |
dup2_x2()
|
StackInstruction |
dup2()
|
ConvertInstruction |
f2d()
|
ConvertInstruction |
f2i()
|
ConvertInstruction |
f2l()
|
MathInstruction |
fadd()
|
ArrayLoadInstruction |
faload()
|
ArrayStoreInstruction |
fastore()
|
CmpInstruction |
fcmpg()
|
CmpInstruction |
fcmpl()
|
ConstantInstruction |
fconst_0()
|
ConstantInstruction |
fconst_1()
|
ConstantInstruction |
fconst_2()
|
MathInstruction |
fdiv()
|
LoadInstruction |
fload_0()
|
LoadInstruction |
fload_1()
|
LoadInstruction |
fload_2()
|
LoadInstruction |
fload_3()
|
LoadInstruction |
fload()
|
MathInstruction |
fmul()
|
MathInstruction |
fneg()
|
MathInstruction |
frem()
|
ReturnInstruction |
freturn()
|
StoreInstruction |
fstore_0()
|
StoreInstruction |
fstore_1()
|
StoreInstruction |
fstore_2()
|
StoreInstruction |
fstore_3()
|
StoreInstruction |
fstore()
|
MathInstruction |
fsub()
|
byte[] |
getCode()
Get the code for this method as a byte array. |
ExceptionHandler |
getExceptionHandler(Class catchType)
Get the exception handler that catches the given exception type; if multiple handlers catch the given type, which is returned is undefined. |
ExceptionHandler |
getExceptionHandler(String catchType)
Get the exception handler that catches the given exception type; if multiple handlers catch the given type, which is returned is undefined. |
ExceptionHandler[] |
getExceptionHandlers()
Get the exception handlers active in this code block, or an empty array if none. |
ExceptionHandler[] |
getExceptionHandlers(Class catchType)
Get all exception handlers that catch the given exception type. |
ExceptionHandler[] |
getExceptionHandlers(String catchType)
Get all exception handlers that catch the given exception type. |
GetFieldInstruction |
getfield()
|
Instruction[] |
getInstructions()
Get all the Instructions of this method. |
int |
getLength()
Return the length of the .class representation of this attribute, in bytes. |
int |
getLocalsIndex(int paramIndex)
Get the local variable index for the paramIndex'th parameter to the method. |
int |
getMaxLocals()
Get the maximum number of local variables (including params) in this method. |
int |
getMaxStack()
Get the maximum stack depth for this code block. |
int |
getNextLocalsIndex()
Get the next next available local variable index. |
GetFieldInstruction |
getstatic()
|
JumpInstruction |
go2_w()
|
JumpInstruction |
go2()
|
boolean |
hasNext()
Return true if a subsequent call to next() will return an instruction. |
boolean |
hasPrevious()
Return true if a subsequent call to previous() will return an instruction. |
ConvertInstruction |
i2b()
|
ConvertInstruction |
i2c()
|
ConvertInstruction |
i2d()
|
ConvertInstruction |
i2f()
|
ConvertInstruction |
i2l()
|
ConvertInstruction |
i2s()
|
MathInstruction |
iadd()
|
ArrayLoadInstruction |
iaload()
|
MathInstruction |
iand()
|
ArrayStoreInstruction |
iastore()
|
ConstantInstruction |
iconst_0()
|
ConstantInstruction |
iconst_1()
|
ConstantInstruction |
iconst_2()
|
ConstantInstruction |
iconst_3()
|
ConstantInstruction |
iconst_4()
|
ConstantInstruction |
iconst_5()
|
ConstantInstruction |
iconst_m1()
|
MathInstruction |
idiv()
|
JumpInstruction |
if_acmpeq()
|
JumpInstruction |
if_acmpne()
|
JumpInstruction |
if_eq()
|
JumpInstruction |
if_ge()
|
JumpInstruction |
if_gt()
|
JumpInstruction |
if_icmpeq()
|
JumpInstruction |
if_icmpge()
|
JumpInstruction |
if_icmpgt()
|
JumpInstruction |
if_icmple()
|
JumpInstruction |
if_icmplt()
|
JumpInstruction |
if_icmpne()
|
JumpInstruction |
if_le()
|
JumpInstruction |
if_lt()
|
JumpInstruction |
if_ne()
|
JumpInstruction |
if_nonnull()
|
JumpInstruction |
if_null()
|
IIncInstruction |
iinc()
|
LoadInstruction |
iload_0()
|
LoadInstruction |
iload_1()
|
LoadInstruction |
iload_2()
|
LoadInstruction |
iload_3()
|
LoadInstruction |
iload()
|
MathInstruction |
imul()
|
MathInstruction |
ineg()
|
ClassInstruction |
instanceofins()
|
MethodInstruction |
invokeinterface()
|
MethodInstruction |
invokespecial()
|
MethodInstruction |
invokestatic()
|
MethodInstruction |
invokevirtual()
|
MathInstruction |
ior()
|
MathInstruction |
irem()
|
ReturnInstruction |
ireturn()
|
MathInstruction |
ishl()
|
MathInstruction |
ishr()
|
StoreInstruction |
istore_0()
|
StoreInstruction |
istore_1()
|
StoreInstruction |
istore_2()
|
StoreInstruction |
istore_3()
|
StoreInstruction |
istore()
|
MathInstruction |
isub()
|
MathInstruction |
iushr()
|
MathInstruction |
ixor()
|
JumpInstruction |
jsr_w()
|
JumpInstruction |
jsr()
|
ConvertInstruction |
l2d()
|
ConvertInstruction |
l2f()
|
ConvertInstruction |
l2i()
|
MathInstruction |
ladd()
|
ArrayLoadInstruction |
laload()
|
MathInstruction |
land()
|
ArrayStoreInstruction |
lastore()
|
CmpInstruction |
lcmp()
|
ConstantInstruction |
lconst_0()
|
ConstantInstruction |
lconst_1()
|
ConstantInstruction |
ldc_w()
|
ConstantInstruction |
ldc()
|
ConstantInstruction |
ldc2_w()
|
MathInstruction |
ldiv()
|
LoadInstruction |
lload_0()
|
LoadInstruction |
lload_1()
|
LoadInstruction |
lload_2()
|
LoadInstruction |
lload_3()
|
LoadInstruction |
lload()
|
MathInstruction |
lmul()
|
MathInstruction |
lneg()
|
LoadInstruction |
load()
This is a convenience method to load a local variable onto the stack, if the type and index to load is not known at compile time. |
LookupSwitchInstruction |
lookupswitch()
|
MathInstruction |
lor()
|
MathInstruction |
lrem()
|
ReturnInstruction |
lreturn()
|
MathInstruction |
lshl()
|
MathInstruction |
lshr()
|
StoreInstruction |
lstore_0()
|
StoreInstruction |
lstore_1()
|
StoreInstruction |
lstore_2()
|
StoreInstruction |
lstore_3()
|
StoreInstruction |
lstore()
|
MathInstruction |
lsub()
|
MathInstruction |
lushr()
|
MathInstruction |
lxor()
|
MathInstruction |
math()
This is a convenience method to invoke the proper math instruction if neither the type nor operation are known at compile time. |
MonitorEnterInstruction |
monitorenter()
|
MonitorExitInstruction |
monitorexit()
|
MathInstruction |
mul()
This is a convenience method to invoke the proper math instruction if the type is not known at compile time. |
MultiANewArrayInstruction |
multianewarray()
|
MathInstruction |
neg()
This is a convenience method to invoke the proper math instruction if the type is not known at compile time. |
NewArrayInstruction |
newarray()
|
ClassInstruction |
newins()
|
Instruction |
next()
Return the next instruction. |
int |
nextIndex()
Return the index of the next instruction, or size() if at end. |
Instruction |
nop()
|
MathInstruction |
or()
This is a convenience method to invoke the proper math instruction if the type is not known at compile time. |
StackInstruction |
pop()
|
StackInstruction |
pop2()
|
Instruction |
previous()
Return the previous instruction. |
int |
previousIndex()
Return the index of the previous instruction, or -1 if at beginning. |
PutFieldInstruction |
putfield()
|
PutFieldInstruction |
putstatic()
|
protected void |
readData(DataInput in,
int length)
Should be overridden by subclasses to read their internal data from the given stream, up to length bytes, excluding the name index. |
MathInstruction |
rem()
This is a convenience method to invoke the proper math instruction if the type is not known at compile time. |
void |
remove()
Remove the current instruction. |
boolean |
removeExceptionHandler(Class catchType)
Remove all exception handlers that catch the given type. |
boolean |
removeExceptionHandler(ExceptionHandler handler)
Remove an exception handler from this code block. |
boolean |
removeExceptionHandler(String catchType)
Remove all exception handlers that catch the given type. |
int |
replaceAll(Instruction[] templates,
Instruction[] with)
Equivalent to looping over each given template/replacement pair and calling replaceAll(Instruction, Instruction) for each. |
int |
replaceAll(Instruction template,
Instruction with)
Replaces all the Instructions in this code block that match the given template with the given Instruction. |
Instruction |
replaceNext(Instruction with)
Replaces the next Instruction with the given one. |
Instruction |
replacePrevious(Instruction with)
Replaces the previous Instruction with the given one. |
RetInstruction |
ret()
|
ReturnInstruction |
returnins()
This is a convenience method to invoke the proper return instruction if the type is not known at compile time. |
ArrayLoadInstruction |
saload()
|
ArrayStoreInstruction |
sastore()
|
boolean |
searchBackward(Instruction template)
Find the closest previous Instruction from the current iterator position that matches the given one, according to the equals() methods of the Instruction types. |
boolean |
searchForward(Instruction template)
Find the next Instruction from the current iterator position that matches the given one, according to the equals() methods of the Instruction types. |
void |
setCode(byte[] code)
Set the code for this method as a byte array. |
void |
setMaxLocals(int max)
Set the maximum number of local variables (including params) in this method. |
void |
setMaxStack(int max)
Set the maximum stack depth for this code block. |
MathInstruction |
shl()
This is a convenience method to invoke the proper math instruction if the type is not known at compile time. |
MathInstruction |
shr()
This is a convenience method to invoke the proper math instruction if the type is not known at compile time. |
ConstantInstruction |
sipush()
|
int |
size()
Return the number of instructions in the method. |
StoreInstruction |
store()
This is a convenience method to store a stack value into a local variable if the type and index to store is not known at compile time. |
MathInstruction |
sub()
This is a convenience method to invoke the proper math instruction if the type is not known at compile time. |
StackInstruction |
swap()
|
TableSwitchInstruction |
tableswitch()
|
MathInstruction |
ushr()
This is a convenience method to invoke the proper math instruction if the type is not known at compile time. |
ReturnInstruction |
vreturn()
|
WideInstruction |
wide()
|
protected void |
writeData(DataOutput out,
int length)
Should be overridden by subclasses to write their internal data to the given stream, up to length bytes, excluding the name index. |
MathInstruction |
xor()
This is a convenience method to invoke the proper math instruction if the type is not known at compile time. |
Methods inherited from class com.techtrader.modules.tools.bytecode.Attribute |
createAttribute,
getName,
getNameIndex,
getOwner,
getPool,
invalidate |
Methods inherited from class com.techtrader.modules.tools.bytecode.BCEntity |
addAttribute,
clearAttributes,
getAttribute,
getAttributes,
getAttributes,
importAttribute,
importAttributes,
readAttributes,
removeAttribute,
removeAttribute,
visitAttributes,
writeAttributes |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
Constructor Detail |
protected Code(int nameIndex, BCEntity owner)
public Code()
Method Detail |
public int getMaxStack()
public void setMaxStack(int max)
public int getMaxLocals()
public void setMaxLocals(int max)
public int getLocalsIndex(int paramIndex)
public int getNextLocalsIndex()
public void calculateMaxLocals()
public void calculateMaxStack()
public ExceptionHandler[] getExceptionHandlers()
public ExceptionHandler getExceptionHandler(Class catchType)
public ExceptionHandler getExceptionHandler(String catchType)
public ExceptionHandler[] getExceptionHandlers(Class catchType)
public ExceptionHandler[] getExceptionHandlers(String catchType)
public ExceptionHandler addExceptionHandler()
public ExceptionHandler addExceptionHandler(Instruction tryStart, Instruction tryEnd, Instruction handlerStart, Class catchType)
tryStart
- the first instruction of the try {} blocktryEnd
- the last instruction of the try {} blockhandlerStart
- the first instruction of the catch {} blockcatchType
- the type of Exception being caughtpublic ExceptionHandler addExceptionHandler(Instruction tryStart, Instruction tryEnd, Instruction handlerStart, String catchType)
tryStart
- the first instruction of the try {} blocktryEnd
- the last instruction of the try {} blockhandlerStart
- the first instruction of the catch {} blockcatchType
- the type of Exception being caughtpublic void clearExceptionHandlers()
public boolean removeExceptionHandler(Class catchType)
public boolean removeExceptionHandler(String catchType)
public boolean removeExceptionHandler(ExceptionHandler handler)
public int size()
public void beforeFirst()
public void afterLast()
public void before(Instruction ins)
public boolean hasNext()
public boolean hasPrevious()
public Instruction next()
public int nextIndex()
public Instruction previous()
public int previousIndex()
public void before(int index)
public boolean searchForward(Instruction template)
public boolean searchBackward(Instruction template)
public Instruction replaceNext(Instruction with)
public Instruction replacePrevious(Instruction with)
public int replaceAll(Instruction template, Instruction with)
public int replaceAll(Instruction[] templates, Instruction[] with)
public void remove()
public Instruction nop()
public ConstantInstruction constant()
public ClassConstantInstruction classconstant()
public ConstantInstruction aconst_null()
public ConstantInstruction iconst_m1()
public ConstantInstruction iconst_0()
public ConstantInstruction iconst_1()
public ConstantInstruction iconst_2()
public ConstantInstruction iconst_3()
public ConstantInstruction iconst_4()
public ConstantInstruction iconst_5()
public ConstantInstruction lconst_0()
public ConstantInstruction lconst_1()
public ConstantInstruction fconst_0()
public ConstantInstruction fconst_1()
public ConstantInstruction fconst_2()
public ConstantInstruction dconst_0()
public ConstantInstruction dconst_1()
public ConstantInstruction bipush()
public ConstantInstruction sipush()
public ConstantInstruction ldc()
public ConstantInstruction ldc_w()
public ConstantInstruction ldc2_w()
public LoadInstruction load()
public LoadInstruction iload()
public LoadInstruction iload_0()
public LoadInstruction iload_1()
public LoadInstruction iload_2()
public LoadInstruction iload_3()
public LoadInstruction lload()
public LoadInstruction lload_0()
public LoadInstruction lload_1()
public LoadInstruction lload_2()
public LoadInstruction lload_3()
public LoadInstruction fload()
public LoadInstruction fload_0()
public LoadInstruction fload_1()
public LoadInstruction fload_2()
public LoadInstruction fload_3()
public LoadInstruction dload()
public LoadInstruction dload_0()
public LoadInstruction dload_1()
public LoadInstruction dload_2()
public LoadInstruction dload_3()
public LoadInstruction aload()
public LoadInstruction aload_0()
public LoadInstruction aload_1()
public LoadInstruction aload_2()
public LoadInstruction aload_3()
public StoreInstruction store()
public StoreInstruction istore()
public StoreInstruction istore_0()
public StoreInstruction istore_1()
public StoreInstruction istore_2()
public StoreInstruction istore_3()
public StoreInstruction lstore()
public StoreInstruction lstore_0()
public StoreInstruction lstore_1()
public StoreInstruction lstore_2()
public StoreInstruction lstore_3()
public StoreInstruction fstore()
public StoreInstruction fstore_0()
public StoreInstruction fstore_1()
public StoreInstruction fstore_2()
public StoreInstruction fstore_3()
public StoreInstruction dstore()
public StoreInstruction dstore_0()
public StoreInstruction dstore_1()
public StoreInstruction dstore_2()
public StoreInstruction dstore_3()
public StoreInstruction astore()
public StoreInstruction astore_0()
public StoreInstruction astore_1()
public StoreInstruction astore_2()
public StoreInstruction astore_3()
public RetInstruction ret()
public IIncInstruction iinc()
public WideInstruction wide()
public ArrayLoadInstruction arrayload()
public ArrayLoadInstruction iaload()
public ArrayLoadInstruction laload()
public ArrayLoadInstruction faload()
public ArrayLoadInstruction daload()
public ArrayLoadInstruction aaload()
public ArrayLoadInstruction baload()
public ArrayLoadInstruction caload()
public ArrayLoadInstruction saload()
public ArrayStoreInstruction arraystore()
public ArrayStoreInstruction iastore()
public ArrayStoreInstruction lastore()
public ArrayStoreInstruction fastore()
public ArrayStoreInstruction dastore()
public ArrayStoreInstruction aastore()
public ArrayStoreInstruction bastore()
public ArrayStoreInstruction castore()
public ArrayStoreInstruction sastore()
public StackInstruction pop()
public StackInstruction pop2()
public StackInstruction dup()
public StackInstruction dup_x1()
public StackInstruction dup_x2()
public StackInstruction dup2()
public StackInstruction dup2_x1()
public StackInstruction dup2_x2()
public StackInstruction swap()
public MathInstruction math()
public MathInstruction add()
public MathInstruction iadd()
public MathInstruction ladd()
public MathInstruction fadd()
public MathInstruction dadd()
public MathInstruction sub()
public MathInstruction isub()
public MathInstruction lsub()
public MathInstruction fsub()
public MathInstruction dsub()
public MathInstruction mul()
public MathInstruction imul()
public MathInstruction lmul()
public MathInstruction fmul()
public MathInstruction dmul()
public MathInstruction div()
public MathInstruction idiv()
public MathInstruction ldiv()
public MathInstruction fdiv()
public MathInstruction ddiv()
public MathInstruction rem()
public MathInstruction irem()
public MathInstruction lrem()
public MathInstruction frem()
public MathInstruction drem()
public MathInstruction neg()
public MathInstruction ineg()
public MathInstruction lneg()
public MathInstruction fneg()
public MathInstruction dneg()
public MathInstruction shl()
public MathInstruction ishl()
public MathInstruction lshl()
public MathInstruction shr()
public MathInstruction ishr()
public MathInstruction lshr()
public MathInstruction ushr()
public MathInstruction iushr()
public MathInstruction lushr()
public MathInstruction and()
public MathInstruction iand()
public MathInstruction land()
public MathInstruction or()
public MathInstruction ior()
public MathInstruction lor()
public MathInstruction xor()
public MathInstruction ixor()
public MathInstruction lxor()
public ConvertInstruction convert()
public ConvertInstruction i2l()
public ConvertInstruction i2f()
public ConvertInstruction i2d()
public ConvertInstruction i2b()
public ConvertInstruction i2c()
public ConvertInstruction i2s()
public ConvertInstruction l2i()
public ConvertInstruction l2f()
public ConvertInstruction l2d()
public ConvertInstruction f2i()
public ConvertInstruction f2l()
public ConvertInstruction f2d()
public ConvertInstruction d2i()
public ConvertInstruction d2l()
public ConvertInstruction d2f()
public CmpInstruction cmp()
public CmpInstruction lcmp()
public CmpInstruction fcmpl()
public CmpInstruction fcmpg()
public CmpInstruction dcmpl()
public CmpInstruction dcmpg()
public JumpInstruction if_eq()
public JumpInstruction if_ne()
public JumpInstruction if_lt()
public JumpInstruction if_ge()
public JumpInstruction if_gt()
public JumpInstruction if_le()
public JumpInstruction if_icmpeq()
public JumpInstruction if_icmpne()
public JumpInstruction if_icmplt()
public JumpInstruction if_icmpge()
public JumpInstruction if_icmpgt()
public JumpInstruction if_icmple()
public JumpInstruction if_acmpeq()
public JumpInstruction if_acmpne()
public JumpInstruction if_null()
public JumpInstruction if_nonnull()
public JumpInstruction go2()
public JumpInstruction jsr()
public JumpInstruction go2_w()
public JumpInstruction jsr_w()
public TableSwitchInstruction tableswitch()
public LookupSwitchInstruction lookupswitch()
public ReturnInstruction returnins()
public ReturnInstruction vreturn()
public ReturnInstruction ireturn()
public ReturnInstruction lreturn()
public ReturnInstruction freturn()
public ReturnInstruction dreturn()
public ReturnInstruction areturn()
public GetFieldInstruction getfield()
public GetFieldInstruction getstatic()
public PutFieldInstruction putfield()
public PutFieldInstruction putstatic()
public MethodInstruction invokevirtual()
public MethodInstruction invokespecial()
public MethodInstruction invokeinterface()
public MethodInstruction invokestatic()
public ClassInstruction newins()
public ClassInstruction anewarray()
public ClassInstruction checkcast()
public ClassInstruction instanceofins()
public MultiANewArrayInstruction multianewarray()
public NewArrayInstruction newarray()
public Instruction arraylength()
public Instruction athrow()
public MonitorEnterInstruction monitorenter()
public MonitorExitInstruction monitorexit()
public Instruction[] getInstructions()
public byte[] getCode() throws IOException
public void setCode(byte[] code) throws IOException
public int getLength()
protected void copy(Attribute attr)
protected void readData(DataInput in, int length) throws IOException
protected void writeData(DataOutput out, int length) throws IOException
public void acceptVisit(BCVisitor visit)
|
TechTrader Bytecode Toolkit | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |