Package org.biojava.utils.bytecode

# Class ByteCode

java.lang.Object
org.biojava.utils.bytecode.ByteCode

public class ByteCode extends Object
Factory for objects which encapsulate individual Java bytecode instructions. Most methods in this class are auto-generated.

There are two classes of methods. The first ones are for creating objects that directly represent opcodes. These effectively wrap one of the opcode constants. The others do something more clever. For example, make_if emits something that is equivalent to a normal Java if statement.

Generic types are supported using the factory methods that take ParametricType arguments.

Author:
  Thomas Down, Matthew Pocock

## Field Summary

Fields
Modifier and Type
Field
Description
`static final byte`
`op_aaload`
`static final byte`
`op_aastore`
`static final byte`
`op_aconst_null`
`static final byte`
`op_aload`
`static final byte`
`op_aload_0`
`static final byte`
`op_aload_1`
`static final byte`
`op_aload_2`
`static final byte`
`op_aload_3`
`static final byte`
`op_anewarray`
`static final byte`
`op_anewarray_quick`
`static final byte`
`op_areturn`
`static final byte`
`op_arraylength`
`static final byte`
`op_astore`
`static final byte`
`op_astore_0`
`static final byte`
`op_astore_1`
`static final byte`
`op_astore_2`
`static final byte`
`op_astore_3`
`static final byte`
`op_athrow`
`static final byte`
`op_baload`
`static final byte`
`op_bastore`
`static final byte`
`op_bipush`
`static final byte`
`op_breakpoint`
`static final byte`
`op_caload`
`static final byte`
`op_castore`
`static final byte`
`op_checkcast`
`static final byte`
`op_checkcast_quick`
`static final byte`
`op_d2f`
`static final byte`
`op_d2i`
`static final byte`
`op_d2l`
`static final byte`
`op_dadd`
`static final byte`
`op_daload`
`static final byte`
`op_dastore`
`static final byte`
`op_dcmpg`
`static final byte`
`op_dcmpl`
`static final byte`
`op_dconst_0`
`static final byte`
`op_dconst_1`
`static final byte`
`op_ddiv`
`static final byte`
`op_dload`
`static final byte`
`op_dload_0`
`static final byte`
`op_dload_1`
`static final byte`
`op_dload_2`
`static final byte`
`op_dload_3`
`static final byte`
`op_dmul`
`static final byte`
`op_dneg`
`static final byte`
`op_drem`
`static final byte`
`op_dreturn`
`static final byte`
`op_dstore`
`static final byte`
`op_dstore_0`
`static final byte`
`op_dstore_1`
`static final byte`
`op_dstore_2`
`static final byte`
`op_dstore_3`
`static final byte`
`op_dsub`
`static final byte`
`op_dup`
`static final byte`
`op_dup_x1`
`static final byte`
`op_dup_x2`
`static final byte`
`op_dup2`
`static final byte`
`op_dup2_x1`
`static final byte`
`op_dup2_x2`
`static final byte`
`op_f2d`
`static final byte`
`op_f2i`
`static final byte`
`op_f2l`
`static final byte`
`op_fadd`
`static final byte`
`op_faload`
`static final byte`
`op_fastore`
`static final byte`
`op_fcmpg`
`static final byte`
`op_fcmpl`
`static final byte`
`op_fconst_0`
`static final byte`
`op_fconst_1`
`static final byte`
`op_fconst_2`
`static final byte`
`op_fdiv`
`static final byte`
`op_fload`
`static final byte`
`op_fload_0`
`static final byte`
`op_fload_1`
`static final byte`
`op_fload_2`
`static final byte`
`op_fload_3`
`static final byte`
`op_fmul`
`static final byte`
`op_fneg`
`static final byte`
`op_frem`
`static final byte`
`op_freturn`
`static final byte`
`op_fstore`
`static final byte`
`op_fstore_0`
`static final byte`
`op_fstore_1`
`static final byte`
`op_fstore_2`
`static final byte`
`op_fstore_3`
`static final byte`
`op_fsub`
`static final byte`
`op_getfield`
`static final byte`
`op_getfield_quick`
`static final byte`
`op_getfield_quick_w`
`static final byte`
`op_getfield2_quick`
`static final byte`
`op_getstatic`
`static final byte`
`op_getstatic_quick`
`static final byte`
`op_getstatic2_quick`
`static final byte`
`op_goto`
`static final byte`
`op_goto_w`
`static final byte`
`op_i2b`
`static final byte`
`op_i2c`
`static final byte`
`op_i2d`
`static final byte`
`op_i2f`
`static final byte`
`op_i2l`
`static final byte`
`op_i2s`
`static final byte`
`op_iadd`
`static final byte`
`op_iaload`
`static final byte`
`op_iand`
`static final byte`
`op_iastore`
`static final byte`
`op_iconst_0`
`static final byte`
`op_iconst_1`
`static final byte`
`op_iconst_2`
`static final byte`
`op_iconst_3`
`static final byte`
`op_iconst_4`
`static final byte`
`op_iconst_5`
`static final byte`
`op_iconst_m1`
`static final byte`
`op_idiv`
`static final byte`
`op_if_acmpeq`
`static final byte`
`op_if_acmpne`
`static final byte`
`op_if_icmpeq`
`static final byte`
`op_if_icmpge`
`static final byte`
`op_if_icmpgt`
`static final byte`
`op_if_icmple`
`static final byte`
`op_if_icmplt`
`static final byte`
`op_if_icmpne`
`static final byte`
`op_ifeq`
`static final byte`
`op_ifge`
`static final byte`
`op_ifgt`
`static final byte`
`op_ifle`
`static final byte`
`op_iflt`
`static final byte`
`op_ifne`
`static final byte`
`op_ifnonnull`
`static final byte`
`op_ifnull`
`static final byte`
`op_iinc`
`static final byte`
`op_iload`
`static final byte`
`op_iload_0`
`static final byte`
`op_iload_1`
`static final byte`
`op_iload_2`
`static final byte`
`op_iload_3`
`static final byte`
`op_impdep1`
`static final byte`
`op_impdep2`
`static final byte`
`op_imul`
`static final byte`
`op_ineg`
`static final byte`
`op_instanceof`
`static final byte`
`op_instanceof_quick`
`static final byte`
`op_invokeinterface`
`static final byte`
`op_invokeinterface_quick`
`static final byte`
`op_invokenonvirtual_quick`
`static final byte`
`op_invokespecial`
`static final byte`
`op_invokestatic`
`static final byte`
`op_invokestatic_quick`
`static final byte`
`op_invokesuper_quick`
`static final byte`
`op_invokevirtual`
`static final byte`
`op_invokevirtual_quick`
`static final byte`
`op_invokevirtual_quick_w`
`static final byte`
`op_invokevirtualobject_quick`
`static final byte`
`op_ior`
`static final byte`
`op_irem`
`static final byte`
`op_ireturn`
`static final byte`
`op_ishl`
`static final byte`
`op_ishr`
`static final byte`
`op_istore`
`static final byte`
`op_istore_0`
`static final byte`
`op_istore_1`
`static final byte`
`op_istore_2`
`static final byte`
`op_istore_3`
`static final byte`
`op_isub`
`static final byte`
`op_iushr`
`static final byte`
`op_ixor`
`static final byte`
`op_jsr`
`static final byte`
`op_jsr_w`
`static final byte`
`op_l2d`
`static final byte`
`op_l2f`
`static final byte`
`op_l2i`
`static final byte`
`op_ladd`
`static final byte`
`op_laload`
`static final byte`
`op_land`
`static final byte`
`op_lastore`
`static final byte`
`op_lcmp`
`static final byte`
`op_lconst_0`
`static final byte`
`op_lconst_1`
`static final byte`
`op_ldc`
`static final byte`
`op_ldc_quick`
`static final byte`
`op_ldc_w`
`static final byte`
`op_ldc_w_quick`
`static final byte`
`op_ldc2_w`
`static final byte`
`op_ldc2_w_quick`
`static final byte`
`op_ldiv`
`static final byte`
`op_lload`
`static final byte`
`op_lload_0`
`static final byte`
`op_lload_1`
`static final byte`
`op_lload_2`
`static final byte`
`op_lload_3`
`static final byte`
`op_lmul`
`static final byte`
`op_lneg`
`static final byte`
`op_lookupswitch`
`static final byte`
`op_lor`
`static final byte`
`op_lrem`
`static final byte`
`op_lreturn`
`static final byte`
`op_lshl`
`static final byte`
`op_lshr`
`static final byte`
`op_lstore`
`static final byte`
`op_lstore_0`
`static final byte`
`op_lstore_1`
`static final byte`
`op_lstore_2`
`static final byte`
`op_lstore_3`
`static final byte`
`op_lsub`
`static final byte`
`op_lushr`
`static final byte`
`op_lxor`
`static final byte`
`op_monitorenter`
`static final byte`
`op_monitorexit`
`static final byte`
`op_multianewarray`
`static final byte`
`op_multianewarray_quick`
`static final byte`
`op_new`
`static final byte`
`op_new_quick`
`static final byte`
`op_newarray`
`static final byte`
`op_nop`
`static final byte`
`op_pop`
`static final byte`
`op_pop2`
`static final byte`
`op_putfield`
`static final byte`
`op_putfield_quick`
`static final byte`
`op_putfield_quick_w`
`static final byte`
`op_putfield2_quick`
`static final byte`
`op_putstatic`
`static final byte`
`op_putstatic_quick`
`static final byte`
`op_putstatic2_quick`
`static final byte`
`op_ret`
`static final byte`
`op_return`
`static final byte`
`op_saload`
`static final byte`
`op_sastore`
`static final byte`
`op_sipush`
`static final byte`
`op_swap`
`static final byte`
`op_tableswitch`
`static final byte`
`op_wide`

## Constructor Summary

Constructors
Constructor
Description
`ByteCode()`

## Method Summary

Modifier and Type
Method
Description
`static Instruction`
`make_aaload()`
Return the Instruction object for the aaload instruction.
`static Instruction`
`make_aastore()`
Return the Instruction object for the aastore instruction.
`static Instruction`
`make_aconst_null()`
Return the Instruction object for the aconst_null instruction.
`ParametricCodeGenerator`
`make_add(ParametricType type)`
`static Instruction`
`make_aload(LocalVariable lv)`
`ParametricCodeGenerator`
`make_and(ParametricType type)`
`static Instruction`
`make_areturn()`
Return the Instruction object for the areturn instruction.
`static ParametricCodeGenerator`
`make_array_load(ParametricType type)`
Load an element of a parametric type to an array.
`static Instruction`
`make_arraylength()`
Return the Instruction object for the arraylength instruction.
`static ParametricCodeGenerator`
`make_arrayStore(ParametricType type)`
Store an element of a parametric type to an array.
`static Instruction`
`make_astore(LocalVariable lv)`
`static Instruction`
`make_athrow()`
Return the Instruction object for the athrow instruction.
`static Instruction`
`make_baload()`
Return the Instruction object for the baload instruction.
`static Instruction`
`make_bastore()`
Return the Instruction object for the bastore instruction.
`static Instruction`
`make_breakpoint()`
Return the Instruction object for the breakpoint instruction.
`static Instruction`
`make_caload()`
Return the Instruction object for the caload instruction.
`PParametricCodeGenerator`
`make_cast(ParametricType from, ParametricType to)`
`static Instruction`
`make_castore()`
Return the Instruction object for the castore instruction.
`static Instruction`
`make_checkcast(CodeClass clazz)`
`ParametricCodeGenerator`
`make_cmpg(ParametricType type)`
`ParametricCodeGenerator`
`make_cmpl(ParametricType type)`
`static Instruction`
`make_d2f()`
Return the Instruction object for the d2f instruction.
`static Instruction`
`make_d2i()`
Return the Instruction object for the d2i instruction.
`static Instruction`
`make_d2l()`
Return the Instruction object for the d2l instruction.
`static Instruction`
`make_dadd()`
Return the Instruction object for the dadd instruction.
`static Instruction`
`make_daload()`
Return the Instruction object for the daload instruction.
`static Instruction`
`make_dastore()`
Return the Instruction object for the dastore instruction.
`static Instruction`
`make_dcmpg()`
Return the Instruction object for the dcmpg instruction.
`static Instruction`
`make_dcmpl()`
Return the Instruction object for the dcmpl instruction.
`static Instruction`
`make_dconst(double d)`
`static Instruction`
`make_ddiv()`
Return the Instruction object for the ddiv instruction.
`ParametricCodeGenerator`
`make_div(ParametricType type)`
`static Instruction`
`make_dload(LocalVariable lv)`
`static Instruction`
`make_dmul()`
Return the Instruction object for the dmul instruction.
`static Instruction`
`make_dneg()`
Return the Instruction object for the dneg instruction.
`static Instruction`
`make_drem()`
Return the Instruction object for the drem instruction.
`static Instruction`
`make_dreturn()`
Return the Instruction object for the dreturn instruction.
`static Instruction`
`make_dstore(LocalVariable lv)`
`static Instruction`
`make_dsub()`
Return the Instruction object for the dsub instruction.
`static Instruction`
`make_dup()`
Return the Instruction object for the dup instruction.
`ParametricCodeGenerator`
`make_dup(ParametricType type)`
`static Instruction`
`make_dup_x1()`
Return the Instruction object for the dup_x1 instruction.
`static Instruction`
`make_dup_x2()`
Return the Instruction object for the dup_x2 instruction.
`static Instruction`
`make_dup2()`
Return the Instruction object for the dup2 instruction.
`static Instruction`
`make_dup2_x1()`
Return the Instruction object for the dup2_x1 instruction.
`static Instruction`
`make_dup2_x2()`
Return the Instruction object for the dup2_x2 instruction.
`static Instruction`
`make_f2d()`
Return the Instruction object for the f2d instruction.
`static Instruction`
`make_f2i()`
Return the Instruction object for the f2i instruction.
`static Instruction`
`make_f2l()`
Return the Instruction object for the f2l instruction.
`static Instruction`
`make_fadd()`
Return the Instruction object for the fadd instruction.
`static Instruction`
`make_faload()`
Return the Instruction object for the faload instruction.
`static Instruction`
`make_fastore()`
Return the Instruction object for the fastore instruction.
`static Instruction`
`make_fcmpg()`
Return the Instruction object for the fcmpg instruction.
`static Instruction`
`make_fcmpl()`
Return the Instruction object for the fcmpl instruction.
`static Instruction`
`make_fconst(float f)`
`static Instruction`
`make_fdiv()`
Return the Instruction object for the fdiv instruction.
`static Instruction`
`make_fload(LocalVariable lv)`
`static Instruction`
`make_fmul()`
Return the Instruction object for the fmul instruction.
`static Instruction`
`make_fneg()`
Return the Instruction object for the fneg instruction.
`static Instruction`
`make_frem()`
Return the Instruction object for the frem instruction.
`static Instruction`
`make_freturn()`
Return the Instruction object for the freturn instruction.
`static Instruction`
`make_fstore(LocalVariable lv)`
`static Instruction`
`make_fsub()`
Return the Instruction object for the fsub instruction.
`static Instruction`
`make_getfield(CodeField cf)`
`static Instruction`
`make_getstatic(CodeField cf)`
`static Instruction`
`make_goto(Label l)`
`static Instruction`
`make_i2b()`
Return the Instruction object for the i2b instruction.
`static Instruction`
`make_i2c()`
Return the Instruction object for the i2c instruction.
`static Instruction`
`make_i2d()`
Return the Instruction object for the i2d instruction.
`static Instruction`
`make_i2f()`
Return the Instruction object for the i2f instruction.
`static Instruction`
`make_i2l()`
Return the Instruction object for the i2l instruction.
`static Instruction`
`make_i2s()`
Return the Instruction object for the i2s instruction.
`static Instruction`
`make_iadd()`
Return the Instruction object for the iadd instruction.
`static Instruction`
`make_iaload()`
Return the Instruction object for the iaload instruction.
`static Instruction`
`make_iand()`
Return the Instruction object for the iand instruction.
`static Instruction`
`make_iastore()`
Return the Instruction object for the iastore instruction.
`static Instruction`
`make_iconst(int i)`
`static Instruction`
`make_idiv()`
Return the Instruction object for the idiv instruction.
`static Instruction`
`make_if(byte op, Label lab)`
Make an if Instruction for the opcode and label.
`static Instruction`
`make_if_acmpeq(Label l)`
Return the Instruction object for the if_acmpeq instruction.
`static Instruction`
`make_if_acmpne(Label l)`
Return the Instruction object for the if_acmpne instruction.
`static Instruction`
`make_if_icmpeq(Label l)`
Return the Instruction object for the if_icmpeq instruction.
`static Instruction`
`make_if_icmpge(Label l)`
Return the Instruction object for the if_icmpge instruction.
`static Instruction`
`make_if_icmpgt(Label l)`
Return the Instruction object for the if_icmpgt instruction.
`static Instruction`
`make_if_icmple(Label l)`
Return the Instruction object for the if_icmple instruction.
`static Instruction`
`make_if_icmplt(Label l)`
Return the Instruction object for the if_icmplt instruction.
`static Instruction`
`make_if_icmpne(Label l)`
Return the Instruction object for the if_icmpne instruction.
`static Instruction`
`make_ifeq(Label lab)`
Return the Instruction object for the ifeq instruction.
`static Instruction`
`make_ifge(Label lab)`
Return the Instruction object for the ifge instruction.
`static Instruction`
`make_ifgt(Label lab)`
Return the Instruction object for the ifgt instruction.
`static Instruction`
`make_ifle(Label lab)`
Return the Instruction object for the ifle instruction.
`static Instruction`
`make_iflt(Label lab)`
Return the Instruction object for the iflt instruction.
`static Instruction`
`make_ifne(Label lab)`
Return the Instruction object for the ifne instruction.
`static Instruction`
`make_ifnonnull(Label l)`
Return the Instruction object for the ifnonnull instruction.
`static Instruction`
`make_ifnull(Label l)`
Return the Instruction object for the ifnull instruction.
`static Instruction`
`make_iload(LocalVariable lv)`
`static Instruction`
`make_impdep1()`
Return the Instruction object for the impdep1 instruction.
`static Instruction`
`make_impdep2()`
Return the Instruction object for the impdep2 instruction.
`static Instruction`
`make_imul()`
Return the Instruction object for the imul instruction.
`static Instruction`
`make_ineg()`
Return the Instruction object for the ineg instruction.
`static Instruction`
`make_instanceof(CodeClass clazz)`
`static Instruction`
`make_invoke(CodeMethod cm)`
Make an invoke opcode that is suited to the method.
`static Instruction`
`make_invokeinterface(CodeMethod cm)`
`static Instruction`
`make_invokespecial(CodeMethod cm)`
`static Instruction`
`make_invokestatic(CodeMethod cm)`
`static Instruction`
`make_invokevirtual(CodeMethod cm)`
`static Instruction`
`make_invokevirtual_quick_w()`
Return the Instruction object for the invokevirtual_quick_w instruction.
`static Instruction`
`make_ior()`
Return the Instruction object for the ior instruction.
`static Instruction`
`make_irem()`
Return the Instruction object for the irem instruction.
`static Instruction`
`make_ireturn()`
Return the Instruction object for the ireturn instruction.
`static Instruction`
`make_ishl()`
Return the Instruction object for the ishl instruction.
`static Instruction`
`make_ishr()`
Return the Instruction object for the ishr instruction.
`static Instruction`
`make_istore(LocalVariable lv)`
`static Instruction`
`make_isub()`
Return the Instruction object for the isub instruction.
`static Instruction`
`make_iushr()`
Return the Instruction object for the iushr instruction.
`static Instruction`
`make_ixor()`
Return the Instruction object for the ixor instruction.
`static Instruction`
`make_jsr(Label l)`
`static Instruction`
`make_l2d()`
Return the Instruction object for the l2d instruction.
`static Instruction`
`make_l2f()`
Return the Instruction object for the l2f instruction.
`static Instruction`
`make_l2i()`
Return the Instruction object for the l2i instruction.
`static Instruction`
`make_ladd()`
Return the Instruction object for the ladd instruction.
`static Instruction`
`make_laload()`
Return the Instruction object for the laload instruction.
`static Instruction`
`make_land()`
Return the Instruction object for the land instruction.
`static Instruction`
`make_lastore()`
Return the Instruction object for the lastore instruction.
`static Instruction`
`make_lcmp()`
Return the Instruction object for the lcmp instruction.
`static Instruction`
`make_lconst(long l)`
`static Instruction`
`make_ldiv()`
Return the Instruction object for the ldiv instruction.
`static Instruction`
`make_lload(LocalVariable lv)`
`static Instruction`
`make_lmul()`
Return the Instruction object for the lmul instruction.
`static Instruction`
`make_lneg()`
Return the Instruction object for the lneg instruction.
`ParametricCodeGenerator`
`make_load(ParametricType type, LocalVariable lv)`
Load an item of a parametric type from a local variable.
`static Instruction`
`make_lor()`
Return the Instruction object for the lor instruction.
`static Instruction`
`make_lrem()`
Return the Instruction object for the lrem instruction.
`static Instruction`
`make_lreturn()`
Return the Instruction object for the lreturn instruction.
`static Instruction`
`make_lshl()`
Return the Instruction object for the lshl instruction.
`static Instruction`
`make_lshr()`
Return the Instruction object for the lshr instruction.
`static Instruction`
`make_lstore(LocalVariable lv)`
`static Instruction`
`make_lsub()`
Return the Instruction object for the lsub instruction.
`static Instruction`
`make_lushr()`
Return the Instruction object for the lushr instruction.
`static Instruction`
`make_lxor()`
Return the Instruction object for the lxor instruction.
`static CodeGenerator`
`make_markLabel(Label lab)`
`static Instruction`
`make_monitorenter()`
Return the Instruction object for the monitorenter instruction.
`static Instruction`
`make_monitorexit()`
Return the Instruction object for the monitorexit instruction.
`ParametricCodeGenerator`
`make_mul(ParametricType type)`
`ParametricCodeGenerator`
`make_neg(ParametricType type)`
`static Instruction`
`make_new(CodeClass clazz)`
`static Instruction`
`make_newarray(CodeClass clazz)`
`static ParametricCodeGenerator`
`make_newraray(ParametricType type)`
`static Instruction`
`make_nop()`
Return the Instruction object for the nop instruction.
`ParametricCodeGenerator`
`make_or(ParametricType type)`
`static Instruction`
`make_pop()`
Return the Instruction object for the pop instruction.
`static Instruction`
`make_pop2()`
Return the Instruction object for the pop2 instruction.
`static Instruction`
`make_putfield(CodeField cf)`
`static Instruction`
`make_putstatic(CodeField cf)`
`ParametricCodeGenerator`
`make_rem(ParametricType type)`
`static Instruction`
`make_return()`
Return the Instruction object for the return instruction.
`static Instruction`
`make_return(CodeClass clazz)`
Creates the return Instruction suitable for a given class or type.
`static Instruction`
`make_return(CodeMethod method)`
A convenient one-stop method to get a return statement suitable for a method.
`ParametricCodeGenerator`
`make_return(ParametricType type)`
Make a return statement for the parametric type.
`static Instruction`
`make_saload()`
Return the Instruction object for the saload instruction.
`static Instruction`
`make_sastore()`
Return the Instruction object for the sastore instruction.
`ParametricCodeGenerator`
`make_save(ParametricType type, LocalVariable lv)`
Store an item of a parametric type to a local variable.
`static Instruction`
`make_sconst(String s)`
`ParametricCodeGenerator`
`make_shiftLeft(ParametricType type)`
`ParametricCodeGenerator`
`make_shiftRight(ParametricType type)`
`ParametricCodeGenerator`
`make_shiftRightLogical(ParametricType type)`
`ParametricCodeGenerator`
`make_sub(ParametricType type)`
`static Instruction`
`make_swap()`
Return the Instruction object for the swap instruction.
`static CodeGenerator`
`make_synchronizedBlock(CodeGenerator code)`
Synchronize the processing of an entire block of code on the object on the top of the stack.
`static CodeGenerator`
`make_synchronizedBlock(LocalVariable lockVar, CodeGenerator code)`
Synchronize the processing of an entire block of code on a local variable.
`static Instruction`
`make_wide()`
Return the Instruction object for the wide instruction.
`ParametricCodeGenerator`
`make_xor(ParametricType type)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### op_nop

public static final byte op_nop

See Also:
  - Constant Field Values

### op_aconst_null

public static final byte op_aconst_null

See Also:
  - Constant Field Values

### op_iconst_m1

public static final byte op_iconst_m1

See Also:
  - Constant Field Values

### op_iconst_0

public static final byte op_iconst_0

See Also:
  - Constant Field Values

### op_iconst_1

public static final byte op_iconst_1

See Also:
  - Constant Field Values

### op_iconst_2

public static final byte op_iconst_2

See Also:
  - Constant Field Values

### op_iconst_3

public static final byte op_iconst_3

See Also:
  - Constant Field Values

### op_iconst_4

public static final byte op_iconst_4

See Also:
  - Constant Field Values

### op_iconst_5

public static final byte op_iconst_5

See Also:
  - Constant Field Values

### op_lconst_0

public static final byte op_lconst_0

See Also:
  - Constant Field Values

### op_lconst_1

public static final byte op_lconst_1

See Also:
  - Constant Field Values

### op_fconst_0

public static final byte op_fconst_0

See Also:
  - Constant Field Values

### op_fconst_1

public static final byte op_fconst_1

See Also:
  - Constant Field Values

### op_fconst_2

public static final byte op_fconst_2

See Also:
  - Constant Field Values

### op_dconst_0

public static final byte op_dconst_0

See Also:
  - Constant Field Values

### op_dconst_1

public static final byte op_dconst_1

See Also:
  - Constant Field Values

### op_bipush

public static final byte op_bipush

See Also:
  - Constant Field Values

### op_sipush

public static final byte op_sipush

See Also:
  - Constant Field Values

### op_ldc

public static final byte op_ldc

See Also:
  - Constant Field Values

### op_ldc_w

public static final byte op_ldc_w

See Also:
  - Constant Field Values

### op_ldc2_w

public static final byte op_ldc2_w

See Also:
  - Constant Field Values

### op_iload

public static final byte op_iload

See Also:
  - Constant Field Values

### op_lload

public static final byte op_lload

See Also:
  - Constant Field Values

### op_fload

public static final byte op_fload

See Also:
  - Constant Field Values

### op_dload

public static final byte op_dload

See Also:
  - Constant Field Values

### op_aload

public static final byte op_aload

See Also:
  - Constant Field Values

### op_iload_0

public static final byte op_iload_0

See Also:
  - Constant Field Values

### op_iload_1

public static final byte op_iload_1

See Also:
  - Constant Field Values

### op_iload_2

public static final byte op_iload_2

See Also:
  - Constant Field Values

### op_iload_3

public static final byte op_iload_3

See Also:
  - Constant Field Values

### op_lload_0

public static final byte op_lload_0

See Also:
  - Constant Field Values

### op_lload_1

public static final byte op_lload_1

See Also:
  - Constant Field Values

### op_lload_2

public static final byte op_lload_2

See Also:
  - Constant Field Values

### op_lload_3

public static final byte op_lload_3

See Also:
  - Constant Field Values

### op_fload_0

public static final byte op_fload_0

See Also:
  - Constant Field Values

### op_fload_1

public static final byte op_fload_1

See Also:
  - Constant Field Values

### op_fload_2

public static final byte op_fload_2

See Also:
  - Constant Field Values

### op_fload_3

public static final byte op_fload_3

See Also:
  - Constant Field Values

### op_dload_0

public static final byte op_dload_0

See Also:
  - Constant Field Values

### op_dload_1

public static final byte op_dload_1

See Also:
  - Constant Field Values

### op_dload_2

public static final byte op_dload_2

See Also:
  - Constant Field Values

### op_dload_3

public static final byte op_dload_3

See Also:
  - Constant Field Values

### op_aload_0

public static final byte op_aload_0

See Also:
  - Constant Field Values

### op_aload_1

public static final byte op_aload_1

See Also:
  - Constant Field Values

### op_aload_2

public static final byte op_aload_2

See Also:
  - Constant Field Values

### op_aload_3

public static final byte op_aload_3

See Also:
  - Constant Field Values

### op_iaload

public static final byte op_iaload

See Also:
  - Constant Field Values

### op_laload

public static final byte op_laload

See Also:
  - Constant Field Values

### op_faload

public static final byte op_faload

See Also:
  - Constant Field Values

### op_daload

public static final byte op_daload

See Also:
  - Constant Field Values

### op_aaload

public static final byte op_aaload

See Also:
  - Constant Field Values

### op_baload

public static final byte op_baload

See Also:
  - Constant Field Values

### op_caload

public static final byte op_caload

See Also:
  - Constant Field Values

### op_saload

public static final byte op_saload

See Also:
  - Constant Field Values

### op_istore

public static final byte op_istore

See Also:
  - Constant Field Values

### op_lstore

public static final byte op_lstore

See Also:
  - Constant Field Values

### op_fstore

public static final byte op_fstore

See Also:
  - Constant Field Values

### op_dstore

public static final byte op_dstore

See Also:
  - Constant Field Values

### op_astore

public static final byte op_astore

See Also:
  - Constant Field Values

### op_istore_0

public static final byte op_istore_0

See Also:
  - Constant Field Values

### op_istore_1

public static final byte op_istore_1

See Also:
  - Constant Field Values

### op_istore_2

public static final byte op_istore_2

See Also:
  - Constant Field Values

### op_istore_3

public static final byte op_istore_3

See Also:
  - Constant Field Values

### op_lstore_0

public static final byte op_lstore_0

See Also:
  - Constant Field Values

### op_lstore_1

public static final byte op_lstore_1

See Also:
  - Constant Field Values

### op_lstore_2

public static final byte op_lstore_2

See Also:
  - Constant Field Values

### op_lstore_3

public static final byte op_lstore_3

See Also:
  - Constant Field Values

### op_fstore_0

public static final byte op_fstore_0

See Also:
  - Constant Field Values

### op_fstore_1

public static final byte op_fstore_1

See Also:
  - Constant Field Values

### op_fstore_2

public static final byte op_fstore_2

See Also:
  - Constant Field Values

### op_fstore_3

public static final byte op_fstore_3

See Also:
  - Constant Field Values

### op_dstore_0

public static final byte op_dstore_0

See Also:
  - Constant Field Values

### op_dstore_1

public static final byte op_dstore_1

See Also:
  - Constant Field Values

### op_dstore_2

public static final byte op_dstore_2

See Also:
  - Constant Field Values

### op_dstore_3

public static final byte op_dstore_3

See Also:
  - Constant Field Values

### op_astore_0

public static final byte op_astore_0

See Also:
  - Constant Field Values

### op_astore_1

public static final byte op_astore_1

See Also:
  - Constant Field Values

### op_astore_2

public static final byte op_astore_2

See Also:
  - Constant Field Values

### op_astore_3

public static final byte op_astore_3

See Also:
  - Constant Field Values

### op_iastore

public static final byte op_iastore

See Also:
  - Constant Field Values

### op_lastore

public static final byte op_lastore

See Also:
  - Constant Field Values

### op_fastore

public static final byte op_fastore

See Also:
  - Constant Field Values

### op_dastore

public static final byte op_dastore

See Also:
  - Constant Field Values

### op_aastore

public static final byte op_aastore

See Also:
  - Constant Field Values

### op_bastore

public static final byte op_bastore

See Also:
  - Constant Field Values

### op_castore

public static final byte op_castore

See Also:
  - Constant Field Values

### op_sastore

public static final byte op_sastore

See Also:
  - Constant Field Values

### op_pop

public static final byte op_pop

See Also:
  - Constant Field Values

### op_pop2

public static final byte op_pop2

See Also:
  - Constant Field Values

### op_dup

public static final byte op_dup

See Also:
  - Constant Field Values

### op_dup_x1

public static final byte op_dup_x1

See Also:
  - Constant Field Values

### op_dup_x2

public static final byte op_dup_x2

See Also:
  - Constant Field Values

### op_dup2

public static final byte op_dup2

See Also:
  - Constant Field Values

### op_dup2_x1

public static final byte op_dup2_x1

See Also:
  - Constant Field Values

### op_dup2_x2

public static final byte op_dup2_x2

See Also:
  - Constant Field Values

### op_swap

public static final byte op_swap

See Also:
  - Constant Field Values

### op_iadd

public static final byte op_iadd

See Also:
  - Constant Field Values

### op_ladd

public static final byte op_ladd

See Also:
  - Constant Field Values

### op_fadd

public static final byte op_fadd

See Also:
  - Constant Field Values

### op_dadd

public static final byte op_dadd

See Also:
  - Constant Field Values

### op_isub

public static final byte op_isub

See Also:
  - Constant Field Values

### op_lsub

public static final byte op_lsub

See Also:
  - Constant Field Values

### op_fsub

public static final byte op_fsub

See Also:
  - Constant Field Values

### op_dsub

public static final byte op_dsub

See Also:
  - Constant Field Values

### op_imul

public static final byte op_imul

See Also:
  - Constant Field Values

### op_lmul

public static final byte op_lmul

See Also:
  - Constant Field Values

### op_fmul

public static final byte op_fmul

See Also:
  - Constant Field Values

### op_dmul

public static final byte op_dmul

See Also:
  - Constant Field Values

### op_idiv

public static final byte op_idiv

See Also:
  - Constant Field Values

### op_ldiv

public static final byte op_ldiv

See Also:
  - Constant Field Values

### op_fdiv

public static final byte op_fdiv

See Also:
  - Constant Field Values

### op_ddiv

public static final byte op_ddiv

See Also:
  - Constant Field Values

### op_irem

public static final byte op_irem

See Also:
  - Constant Field Values

### op_lrem

public static final byte op_lrem

See Also:
  - Constant Field Values

### op_frem

public static final byte op_frem

See Also:
  - Constant Field Values

### op_drem

public static final byte op_drem

See Also:
  - Constant Field Values

### op_ineg

public static final byte op_ineg

See Also:
  - Constant Field Values

### op_lneg

public static final byte op_lneg

See Also:
  - Constant Field Values

### op_fneg

public static final byte op_fneg

See Also:
  - Constant Field Values

### op_dneg

public static final byte op_dneg

See Also:
  - Constant Field Values

### op_ishl

public static final byte op_ishl

See Also:
  - Constant Field Values

### op_lshl

public static final byte op_lshl

See Also:
  - Constant Field Values

### op_ishr

public static final byte op_ishr

See Also:
  - Constant Field Values

### op_lshr

public static final byte op_lshr

See Also:
  - Constant Field Values

### op_iushr

public static final byte op_iushr

See Also:
  - Constant Field Values

### op_lushr

public static final byte op_lushr

See Also:
  - Constant Field Values

### op_iand

public static final byte op_iand

See Also:
  - Constant Field Values

### op_land

public static final byte op_land

See Also:
  - Constant Field Values

### op_ior

public static final byte op_ior

See Also:
  - Constant Field Values

### op_lor

public static final byte op_lor

See Also:
  - Constant Field Values

### op_ixor

public static final byte op_ixor

See Also:
  - Constant Field Values

### op_lxor

public static final byte op_lxor

See Also:
  - Constant Field Values

### op_iinc

public static final byte op_iinc

See Also:
  - Constant Field Values

### op_i2l

public static final byte op_i2l

See Also:
  - Constant Field Values

### op_i2f

public static final byte op_i2f

See Also:
  - Constant Field Values

### op_i2d

public static final byte op_i2d

See Also:
  - Constant Field Values

### op_l2i

public static final byte op_l2i

See Also:
  - Constant Field Values

### op_l2f

public static final byte op_l2f

See Also:
  - Constant Field Values

### op_l2d

public static final byte op_l2d

See Also:
  - Constant Field Values

### op_f2i

public static final byte op_f2i

See Also:
  - Constant Field Values

### op_f2l

public static final byte op_f2l

See Also:
  - Constant Field Values

### op_f2d

public static final byte op_f2d

See Also:
  - Constant Field Values

### op_d2i

public static final byte op_d2i

See Also:
  - Constant Field Values

### op_d2l

public static final byte op_d2l

See Also:
  - Constant Field Values

### op_d2f

public static final byte op_d2f

See Also:
  - Constant Field Values

### op_i2b

public static final byte op_i2b

See Also:
  - Constant Field Values

### op_i2c

public static final byte op_i2c

See Also:
  - Constant Field Values

### op_i2s

public static final byte op_i2s

See Also:
  - Constant Field Values

### op_lcmp

public static final byte op_lcmp

See Also:
  - Constant Field Values

### op_fcmpl

public static final byte op_fcmpl

See Also:
  - Constant Field Values

### op_fcmpg

public static final byte op_fcmpg

See Also:
  - Constant Field Values

### op_dcmpl

public static final byte op_dcmpl

See Also:
  - Constant Field Values

### op_dcmpg

public static final byte op_dcmpg

See Also:
  - Constant Field Values

### op_ifeq

public static final byte op_ifeq

See Also:
  - Constant Field Values

### op_ifne

public static final byte op_ifne

See Also:
  - Constant Field Values

### op_iflt

public static final byte op_iflt

See Also:
  - Constant Field Values

### op_ifge

public static final byte op_ifge

See Also:
  - Constant Field Values

### op_ifgt

public static final byte op_ifgt

See Also:
  - Constant Field Values

### op_ifle

public static final byte op_ifle

See Also:
  - Constant Field Values

### op_if_icmpeq

public static final byte op_if_icmpeq

See Also:
  - Constant Field Values

### op_if_icmpne

public static final byte op_if_icmpne

See Also:
  - Constant Field Values

### op_if_icmplt

public static final byte op_if_icmplt

See Also:
  - Constant Field Values

### op_if_icmpge

public static final byte op_if_icmpge

See Also:
  - Constant Field Values

### op_if_icmpgt

public static final byte op_if_icmpgt

See Also:
  - Constant Field Values

### op_if_icmple

public static final byte op_if_icmple

See Also:
  - Constant Field Values

### op_if_acmpeq

public static final byte op_if_acmpeq

See Also:
  - Constant Field Values

### op_if_acmpne

public static final byte op_if_acmpne

See Also:
  - Constant Field Values

### op_goto

public static final byte op_goto

See Also:
  - Constant Field Values

### op_jsr

public static final byte op_jsr

See Also:
  - Constant Field Values

### op_ret

public static final byte op_ret

See Also:
  - Constant Field Values

### op_tableswitch

public static final byte op_tableswitch

See Also:
  - Constant Field Values

### op_lookupswitch

public static final byte op_lookupswitch

See Also:
  - Constant Field Values

### op_ireturn

public static final byte op_ireturn

See Also:
  - Constant Field Values

### op_lreturn

public static final byte op_lreturn

See Also:
  - Constant Field Values

### op_freturn

public static final byte op_freturn

See Also:
  - Constant Field Values

### op_dreturn

public static final byte op_dreturn

See Also:
  - Constant Field Values

### op_areturn

public static final byte op_areturn

See Also:
  - Constant Field Values

### op_return

public static final byte op_return

See Also:
  - Constant Field Values

### op_getstatic

public static final byte op_getstatic

See Also:
  - Constant Field Values

### op_putstatic

public static final byte op_putstatic

See Also:
  - Constant Field Values

### op_getfield

public static final byte op_getfield

See Also:
  - Constant Field Values

### op_putfield

public static final byte op_putfield

See Also:
  - Constant Field Values

### op_invokevirtual

public static final byte op_invokevirtual

See Also:
  - Constant Field Values

### op_invokespecial

public static final byte op_invokespecial

See Also:
  - Constant Field Values

### op_invokestatic

public static final byte op_invokestatic

See Also:
  - Constant Field Values

### op_invokeinterface

public static final byte op_invokeinterface

See Also:
  - Constant Field Values

### op_new

public static final byte op_new

See Also:
  - Constant Field Values

### op_newarray

public static final byte op_newarray

See Also:
  - Constant Field Values

### op_anewarray

public static final byte op_anewarray

See Also:
  - Constant Field Values

### op_arraylength

public static final byte op_arraylength

See Also:
  - Constant Field Values

### op_athrow

public static final byte op_athrow

See Also:
  - Constant Field Values

### op_checkcast

public static final byte op_checkcast

See Also:
  - Constant Field Values

### op_instanceof

public static final byte op_instanceof

See Also:
  - Constant Field Values

### op_monitorenter

public static final byte op_monitorenter

See Also:
  - Constant Field Values

### op_monitorexit

public static final byte op_monitorexit

See Also:
  - Constant Field Values

### op_wide

public static final byte op_wide

See Also:
  - Constant Field Values

### op_multianewarray

public static final byte op_multianewarray

See Also:
  - Constant Field Values

### op_ifnull

public static final byte op_ifnull

See Also:
  - Constant Field Values

### op_ifnonnull

public static final byte op_ifnonnull

See Also:
  - Constant Field Values

### op_goto_w

public static final byte op_goto_w

See Also:
  - Constant Field Values

### op_jsr_w

public static final byte op_jsr_w

See Also:
  - Constant Field Values

### op_breakpoint

public static final byte op_breakpoint

See Also:
  - Constant Field Values

### op_ldc_quick

public static final byte op_ldc_quick

See Also:
  - Constant Field Values

### op_ldc_w_quick

public static final byte op_ldc_w_quick

See Also:
  - Constant Field Values

### op_ldc2_w_quick

public static final byte op_ldc2_w_quick

See Also:
  - Constant Field Values

### op_getfield_quick

public static final byte op_getfield_quick

See Also:
  - Constant Field Values

### op_putfield_quick

public static final byte op_putfield_quick

See Also:
  - Constant Field Values

### op_getfield2_quick

public static final byte op_getfield2_quick

See Also:
  - Constant Field Values

### op_putfield2_quick

public static final byte op_putfield2_quick

See Also:
  - Constant Field Values

### op_getstatic_quick

public static final byte op_getstatic_quick

See Also:
  - Constant Field Values

### op_putstatic_quick

public static final byte op_putstatic_quick

See Also:
  - Constant Field Values

### op_getstatic2_quick

public static final byte op_getstatic2_quick

See Also:
  - Constant Field Values

### op_putstatic2_quick

public static final byte op_putstatic2_quick

See Also:
  - Constant Field Values

### op_invokevirtual_quick

public static final byte op_invokevirtual_quick

See Also:
  - Constant Field Values

### op_invokenonvirtual_quick

public static final byte op_invokenonvirtual_quick

See Also:
  - Constant Field Values

### op_invokesuper_quick

public static final byte op_invokesuper_quick

See Also:
  - Constant Field Values

### op_invokestatic_quick

public static final byte op_invokestatic_quick

See Also:
  - Constant Field Values

### op_invokeinterface_quick

public static final byte op_invokeinterface_quick

See Also:
  - Constant Field Values

### op_invokevirtualobject_quick

public static final byte op_invokevirtualobject_quick

See Also:
  - Constant Field Values

### op_new_quick

public static final byte op_new_quick

See Also:
  - Constant Field Values

### op_anewarray_quick

public static final byte op_anewarray_quick

See Also:
  - Constant Field Values

### op_multianewarray_quick

public static final byte op_multianewarray_quick

See Also:
  - Constant Field Values

### op_checkcast_quick

public static final byte op_checkcast_quick

See Also:
  - Constant Field Values

### op_instanceof_quick

public static final byte op_instanceof_quick

See Also:
  - Constant Field Values

### op_invokevirtual_quick_w

public static final byte op_invokevirtual_quick_w

See Also:
  - Constant Field Values

### op_getfield_quick_w

public static final byte op_getfield_quick_w

See Also:
  - Constant Field Values

### op_putfield_quick_w

public static final byte op_putfield_quick_w

See Also:
  - Constant Field Values

### op_impdep1

public static final byte op_impdep1

See Also:
  - Constant Field Values

### op_impdep2

public static final byte op_impdep2

See Also:
  - Constant Field Values

## Constructor Details

### ByteCode

public ByteCode()

## Method Details

### make_iconst

public static Instruction make_iconst(int i)

### make_sconst

public static Instruction make_sconst(String s)

### make_dconst

public static Instruction make_dconst(double d)

### make_lconst

public static Instruction make_lconst(long l)

### make_fconst

public static Instruction make_fconst(float f)

### make_invokevirtual

public static Instruction make_invokevirtual(CodeMethod cm)

### make_invokespecial

public static Instruction make_invokespecial(CodeMethod cm)

### make_invokestatic

public static Instruction make_invokestatic(CodeMethod cm)

### make_invokeinterface

public static Instruction make_invokeinterface(CodeMethod cm)

### make_getfield

public static Instruction make_getfield(CodeField cf)

### make_putfield

public static Instruction make_putfield(CodeField cf)

### make_getstatic

public static Instruction make_getstatic(CodeField cf)

### make_putstatic

public static Instruction make_putstatic(CodeField cf)

### make_iload

public static Instruction make_iload(LocalVariable lv) throws CodeException

Throws:
  `CodeException`

### make_lload

public static Instruction make_lload(LocalVariable lv) throws CodeException

Throws:
  `CodeException`

### make_fload

public static Instruction make_fload(LocalVariable lv) throws CodeException

Throws:
  `CodeException`

### make_dload

public static Instruction make_dload(LocalVariable lv) throws CodeException

Throws:
  `CodeException`

### make_aload

public static Instruction make_aload(LocalVariable lv) throws CodeException

Throws:
  `CodeException`

### make_istore

public static Instruction make_istore(LocalVariable lv) throws CodeException

Throws:
  `CodeException`

### make_lstore

public static Instruction make_lstore(LocalVariable lv) throws CodeException

Throws:
  `CodeException`

### make_fstore

public static Instruction make_fstore(LocalVariable lv) throws CodeException

Throws:
  `CodeException`

### make_dstore

public static Instruction make_dstore(LocalVariable lv) throws CodeException

Throws:
  `CodeException`

### make_astore

public static Instruction make_astore(LocalVariable lv) throws CodeException

Throws:
  `CodeException`

### make_ifeq

public static Instruction make_ifeq(Label lab)
Return the Instruction object for the ifeq instruction.

### make_ifne

public static Instruction make_ifne(Label lab)
Return the Instruction object for the ifne instruction.

### make_iflt

public static Instruction make_iflt(Label lab)
Return the Instruction object for the iflt instruction.

### make_ifge

public static Instruction make_ifge(Label lab)
Return the Instruction object for the ifge instruction.

### make_ifgt

public static Instruction make_ifgt(Label lab)
Return the Instruction object for the ifgt instruction.

### make_ifle

public static Instruction make_ifle(Label lab)
Return the Instruction object for the ifle instruction.

### make_if_icmpeq

public static Instruction make_if_icmpeq(Label l)
Return the Instruction object for the if_icmpeq instruction.

### make_if_icmpne

public static Instruction make_if_icmpne(Label l)
Return the Instruction object for the if_icmpne instruction.

### make_if_icmplt

public static Instruction make_if_icmplt(Label l)
Return the Instruction object for the if_icmplt instruction.

### make_if_icmpge

public static Instruction make_if_icmpge(Label l)
Return the Instruction object for the if_icmpge instruction.

### make_if_icmpgt

public static Instruction make_if_icmpgt(Label l)
Return the Instruction object for the if_icmpgt instruction.

### make_if_icmple

public static Instruction make_if_icmple(Label l)
Return the Instruction object for the if_icmple instruction.

### make_if_acmpeq

public static Instruction make_if_acmpeq(Label l)
Return the Instruction object for the if_acmpeq instruction.

### make_if_acmpne

public static Instruction make_if_acmpne(Label l)
Return the Instruction object for the if_acmpne instruction.

### make_ifnull

public static Instruction make_ifnull(Label l)
Return the Instruction object for the ifnull instruction.

### make_ifnonnull

public static Instruction make_ifnonnull(Label l)
Return the Instruction object for the ifnonnull instruction.

### make_goto

public static Instruction make_goto(Label l)

### make_jsr

public static Instruction make_jsr(Label l)

### make_nop

public static Instruction make_nop()
Return the Instruction object for the nop instruction.

### make_aconst_null

public static Instruction make_aconst_null()
Return the Instruction object for the aconst_null instruction.

### make_iaload

public static Instruction make_iaload()
Return the Instruction object for the iaload instruction.

### make_laload

public static Instruction make_laload()
Return the Instruction object for the laload instruction.

### make_faload

public static Instruction make_faload()
Return the Instruction object for the faload instruction.

### make_daload

public static Instruction make_daload()
Return the Instruction object for the daload instruction.

### make_aaload

public static Instruction make_aaload()
Return the Instruction object for the aaload instruction.

### make_baload

public static Instruction make_baload()
Return the Instruction object for the baload instruction.

### make_caload

public static Instruction make_caload()
Return the Instruction object for the caload instruction.

### make_saload

public static Instruction make_saload()
Return the Instruction object for the saload instruction.

### make_iastore

public static Instruction make_iastore()
Return the Instruction object for the iastore instruction.

### make_lastore

public static Instruction make_lastore()
Return the Instruction object for the lastore instruction.

### make_fastore

public static Instruction make_fastore()
Return the Instruction object for the fastore instruction.

### make_dastore

public static Instruction make_dastore()
Return the Instruction object for the dastore instruction.

### make_aastore

public static Instruction make_aastore()
Return the Instruction object for the aastore instruction.

### make_bastore

public static Instruction make_bastore()
Return the Instruction object for the bastore instruction.

### make_castore

public static Instruction make_castore()
Return the Instruction object for the castore instruction.

### make_sastore

public static Instruction make_sastore()
Return the Instruction object for the sastore instruction.

### make_pop

public static Instruction make_pop()
Return the Instruction object for the pop instruction.

### make_pop2

public static Instruction make_pop2()
Return the Instruction object for the pop2 instruction.

### make_dup

public static Instruction make_dup()
Return the Instruction object for the dup instruction.

### make_dup_x1

public static Instruction make_dup_x1()
Return the Instruction object for the dup_x1 instruction.

### make_dup_x2

public static Instruction make_dup_x2()
Return the Instruction object for the dup_x2 instruction.

### make_dup2

public static Instruction make_dup2()
Return the Instruction object for the dup2 instruction.

### make_dup2_x1

public static Instruction make_dup2_x1()
Return the Instruction object for the dup2_x1 instruction.

### make_dup2_x2

public static Instruction make_dup2_x2()
Return the Instruction object for the dup2_x2 instruction.

### make_swap

public static Instruction make_swap()
Return the Instruction object for the swap instruction.

### make_iadd

public static Instruction make_iadd()
Return the Instruction object for the iadd instruction.

### make_ladd

public static Instruction make_ladd()
Return the Instruction object for the ladd instruction.

### make_fadd

public static Instruction make_fadd()
Return the Instruction object for the fadd instruction.

### make_dadd

public static Instruction make_dadd()
Return the Instruction object for the dadd instruction.

### make_isub

public static Instruction make_isub()
Return the Instruction object for the isub instruction.

### make_lsub

public static Instruction make_lsub()
Return the Instruction object for the lsub instruction.

### make_fsub

public static Instruction make_fsub()
Return the Instruction object for the fsub instruction.

### make_dsub

public static Instruction make_dsub()
Return the Instruction object for the dsub instruction.

### make_imul

public static Instruction make_imul()
Return the Instruction object for the imul instruction.

### make_lmul

public static Instruction make_lmul()
Return the Instruction object for the lmul instruction.

### make_fmul

public static Instruction make_fmul()
Return the Instruction object for the fmul instruction.

### make_dmul

public static Instruction make_dmul()
Return the Instruction object for the dmul instruction.

### make_idiv

public static Instruction make_idiv()
Return the Instruction object for the idiv instruction.

### make_ldiv

public static Instruction make_ldiv()
Return the Instruction object for the ldiv instruction.

### make_fdiv

public static Instruction make_fdiv()
Return the Instruction object for the fdiv instruction.

### make_ddiv

public static Instruction make_ddiv()
Return the Instruction object for the ddiv instruction.

### make_irem

public static Instruction make_irem()
Return the Instruction object for the irem instruction.

### make_lrem

public static Instruction make_lrem()
Return the Instruction object for the lrem instruction.

### make_frem

public static Instruction make_frem()
Return the Instruction object for the frem instruction.

### make_drem

public static Instruction make_drem()
Return the Instruction object for the drem instruction.

### make_ineg

public static Instruction make_ineg()
Return the Instruction object for the ineg instruction.

### make_lneg

public static Instruction make_lneg()
Return the Instruction object for the lneg instruction.

### make_fneg

public static Instruction make_fneg()
Return the Instruction object for the fneg instruction.

### make_dneg

public static Instruction make_dneg()
Return the Instruction object for the dneg instruction.

### make_ishl

public static Instruction make_ishl()
Return the Instruction object for the ishl instruction.

### make_lshl

public static Instruction make_lshl()
Return the Instruction object for the lshl instruction.

### make_ishr

public static Instruction make_ishr()
Return the Instruction object for the ishr instruction.

### make_lshr

public static Instruction make_lshr()
Return the Instruction object for the lshr instruction.

### make_iushr

public static Instruction make_iushr()
Return the Instruction object for the iushr instruction.

### make_lushr

public static Instruction make_lushr()
Return the Instruction object for the lushr instruction.

### make_iand

public static Instruction make_iand()
Return the Instruction object for the iand instruction.

### make_land

public static Instruction make_land()
Return the Instruction object for the land instruction.

### make_ior

public static Instruction make_ior()
Return the Instruction object for the ior instruction.

### make_lor

public static Instruction make_lor()
Return the Instruction object for the lor instruction.

### make_ixor

public static Instruction make_ixor()
Return the Instruction object for the ixor instruction.

### make_lxor

public static Instruction make_lxor()
Return the Instruction object for the lxor instruction.

### make_i2l

public static Instruction make_i2l()
Return the Instruction object for the i2l instruction.

### make_i2f

public static Instruction make_i2f()
Return the Instruction object for the i2f instruction.

### make_i2d

public static Instruction make_i2d()
Return the Instruction object for the i2d instruction.

### make_l2i

public static Instruction make_l2i()
Return the Instruction object for the l2i instruction.

### make_l2f

public static Instruction make_l2f()
Return the Instruction object for the l2f instruction.

### make_l2d

public static Instruction make_l2d()
Return the Instruction object for the l2d instruction.

### make_f2i

public static Instruction make_f2i()
Return the Instruction object for the f2i instruction.

### make_f2l

public static Instruction make_f2l()
Return the Instruction object for the f2l instruction.

### make_f2d

public static Instruction make_f2d()
Return the Instruction object for the f2d instruction.

### make_d2i

public static Instruction make_d2i()
Return the Instruction object for the d2i instruction.

### make_d2l

public static Instruction make_d2l()
Return the Instruction object for the d2l instruction.

### make_d2f

public static Instruction make_d2f()
Return the Instruction object for the d2f instruction.

### make_i2b

public static Instruction make_i2b()
Return the Instruction object for the i2b instruction.

### make_i2c

public static Instruction make_i2c()
Return the Instruction object for the i2c instruction.

### make_i2s

public static Instruction make_i2s()
Return the Instruction object for the i2s instruction.

### make_lcmp

public static Instruction make_lcmp()
Return the Instruction object for the lcmp instruction.

### make_fcmpl

public static Instruction make_fcmpl()
Return the Instruction object for the fcmpl instruction.

### make_fcmpg

public static Instruction make_fcmpg()
Return the Instruction object for the fcmpg instruction.

### make_dcmpl

public static Instruction make_dcmpl()
Return the Instruction object for the dcmpl instruction.

### make_dcmpg

public static Instruction make_dcmpg()
Return the Instruction object for the dcmpg instruction.

### make_ireturn

public static Instruction make_ireturn()
Return the Instruction object for the ireturn instruction.

### make_lreturn

public static Instruction make_lreturn()
Return the Instruction object for the lreturn instruction.

### make_freturn

public static Instruction make_freturn()
Return the Instruction object for the freturn instruction.

### make_dreturn

public static Instruction make_dreturn()
Return the Instruction object for the dreturn instruction.

### make_areturn

public static Instruction make_areturn()
Return the Instruction object for the areturn instruction.

### make_return

public static Instruction make_return()
Return the Instruction object for the return instruction.

### make_arraylength

public static Instruction make_arraylength()
Return the Instruction object for the arraylength instruction.

### make_athrow

public static Instruction make_athrow()
Return the Instruction object for the athrow instruction.

### make_monitorenter

public static Instruction make_monitorenter()
Return the Instruction object for the monitorenter instruction.

### make_monitorexit

public static Instruction make_monitorexit()
Return the Instruction object for the monitorexit instruction.

### make_wide

public static Instruction make_wide()
Return the Instruction object for the wide instruction.

### make_breakpoint

public static Instruction make_breakpoint()
Return the Instruction object for the breakpoint instruction.

### make_invokevirtual_quick_w

public static Instruction make_invokevirtual_quick_w()
Return the Instruction object for the invokevirtual_quick_w instruction. Apparently now undocumented. Presumably deprecated.

### make_impdep1

public static Instruction make_impdep1()
Return the Instruction object for the impdep1 instruction.

### make_impdep2

public static Instruction make_impdep2()
Return the Instruction object for the impdep2 instruction.

### make_checkcast

public static Instruction make_checkcast(CodeClass clazz)

### make_instanceof

public static Instruction make_instanceof(CodeClass clazz)

### make_new

public static Instruction make_new(CodeClass clazz)

### make_newarray

public static Instruction make_newarray(CodeClass clazz) throws CodeException

Throws:
  `CodeException`

### make_return

public static Instruction make_return(CodeMethod method)
A convenient one-stop method to get a return statement suitable for a method.

Parameters:
  `method` - the CodeMethod to return from
Returns:
  a return Instruction that fits this method's return type

### make_return

public static Instruction make_return(CodeClass clazz)
Creates the return Instruction suitable for a given class or type.

Parameters:
  `clazz` - the CodeClass representing the class or type to return
Returns:
  the apropreate return instruction

### make_invoke

public static Instruction make_invoke(CodeMethod cm)
Make an invoke opcode that is suited to the method.

Constructors and private methods are invoked by invokespecial. Static methods are invoked by invokestatic. Methods referred to by interface are invoked by invokeinterface, and methods referred to by classes are invoked by invokeabstract.

Parameters:
  `cm` - the CodeMethod to invoke
Returns:
  an invocation Instruction suited to the method

### make_synchronizedBlock

public static CodeGenerator make_synchronizedBlock(LocalVariable lockVar, CodeGenerator code) throws CodeException
Synchronize the processing of an entire block of code on a local variable. The local variable must refer to a Java object. It is safe to replace the value of the local variable within the block.

Parameters:
  `lockVar` - Label for the local variable to lock on
  `code` - the CodeGenerator that will make the body of the synchronized block
Throws:
  `CodeException` - if locVar holds a primative value

### make_synchronizedBlock

public static CodeGenerator make_synchronizedBlock(CodeGenerator code)
Synchronize the processing of an entire block of code on the object on the top of the stack.

Parameters:
  `code` - the CodeGenerator that will make the body of the synchronized block
  `lockVar` - Label for the local variable to lock on

### make_markLabel

public static CodeGenerator make_markLabel(Label lab)

### make_if

public static Instruction make_if(byte op, Label lab)
Make an if Instruction for the opcode and label.

Obcodes for IF jump to the label if the condition is true, or execute the next instruction ontherwise. In this case, op will be used to compare the top of the stack and if the condition is true, will cause a jump to the label. Otherwise, the next instruction in the stream will be used.

Parameters:
  `op` - if opcode
  `lab` - Label to jump to
Returns:
  an Instruction that will perform an if
Throws:
  `IllegalArgumentException` - if the op code is not an if instruction

### make_newraray

public static ParametricCodeGenerator make_newraray(ParametricType type)

### make_array_load

public static ParametricCodeGenerator make_array_load(ParametricType type)
Load an element of a parametric type to an array.

This is the parametric version of the make_<x>aload() factory methods.

Parameters:
  `type` - the ParametricType giving the element type of the array
Returns:
  a ParametricCodeGenerator that will load the correct type.

### make_arrayStore

public static ParametricCodeGenerator make_arrayStore(ParametricType type)
Store an element of a parametric type to an array.

This is the parametric version of the make_<x>astore() factory methods.

Parameters:
  `type` - the ParametricType giving the element type of the array
Returns:
  a ParametricCodeGenerator that will store the correct type.

### make_load

public ParametricCodeGenerator make_load(ParametricType type, LocalVariable lv) throws CodeException
Load an item of a parametric type from a local variable.

This is the parametric version of the make_<x>load() factory methods.

Parameters:
  `type` - the ParametricType giving the type to load
  `lv` - the LocalVariable to load from
Returns:
  a ParametricCodeGenerator that will load the correct type.
Throws:
  `CodeException`

### make_save

public ParametricCodeGenerator make_save(ParametricType type, LocalVariable lv) throws CodeException
Store an item of a parametric type to a local variable.

This is the parametric version of the make_<x>save() factory methods.

Parameters:
  `type` - the ParametricType giving the type to save
  `lv` - the LocalVariable to load from
Returns:
  a ParametricCodeGenerator that will save the correct type.
Throws:
  `CodeException`

### make_return

public ParametricCodeGenerator make_return(ParametricType type)
Make a return statement for the parametric type.

Parameters:
  `type` - the ParametricType to return

### make_cast

public PParametricCodeGenerator make_cast(ParametricType from, ParametricType to) throws CodeException

Throws:
  `CodeException`

### make_add

public ParametricCodeGenerator make_add(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_sub

public ParametricCodeGenerator make_sub(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_mul

public ParametricCodeGenerator make_mul(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_div

public ParametricCodeGenerator make_div(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_rem

public ParametricCodeGenerator make_rem(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_neg

public ParametricCodeGenerator make_neg(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_shiftLeft

public ParametricCodeGenerator make_shiftLeft(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_shiftRight

public ParametricCodeGenerator make_shiftRight(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_shiftRightLogical

public ParametricCodeGenerator make_shiftRightLogical(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_and

public ParametricCodeGenerator make_and(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_or

public ParametricCodeGenerator make_or(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_xor

public ParametricCodeGenerator make_xor(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_cmpg

public ParametricCodeGenerator make_cmpg(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_cmpl

public ParametricCodeGenerator make_cmpl(ParametricType type) throws CodeException

Throws:
  `CodeException`

### make_dup

public ParametricCodeGenerator make_dup(ParametricType type) throws CodeException

Throws:
  `CodeException`