org.apache.jdo.impl.enhancer.classfile
Class InsnInterfaceInvoke

java.lang.Object
  extended byorg.apache.jdo.impl.enhancer.classfile.Insn
      extended byorg.apache.jdo.impl.enhancer.classfile.InsnConstOp
          extended byorg.apache.jdo.impl.enhancer.classfile.InsnInterfaceInvoke
All Implemented Interfaces:
VMConstants

public class InsnInterfaceInvoke
extends InsnConstOp

Special instruction form for the opc_invokeinterface instruction


Field Summary
private  int nArgsOp
           
 
Fields inherited from class org.apache.jdo.impl.enhancer.classfile.InsnConstOp
 
Fields inherited from class org.apache.jdo.impl.enhancer.classfile.Insn
NO_OFFSET, opc_target
 
Fields inherited from interface org.apache.jdo.impl.enhancer.classfile.VMConstants
ACCAbstract, ACCAnnotation, ACCBridge, ACCEnum, ACCFinal, ACCInterface, ACCNative, ACCPrivate, ACCProtected, ACCPublic, ACCStatic, ACCStrict, ACCSuper, ACCSynchronized, ACCSynthetic, ACCTransient, ACCVarargs, ACCVolatile, CONSTANTClass, CONSTANTDouble, CONSTANTFieldRef, CONSTANTFloat, CONSTANTInteger, CONSTANTInterfaceMethodRef, CONSTANTLong, CONSTANTMethodRef, CONSTANTNameAndType, CONSTANTString, CONSTANTUnicode, CONSTANTUtf8, opc_aaload, opc_aastore, opc_aconst_null, opc_aload, opc_aload_0, opc_aload_1, opc_aload_2, opc_aload_3, opc_anewarray, opc_areturn, opc_arraylength, opc_astore, opc_astore_0, opc_astore_1, opc_astore_2, opc_astore_3, opc_athrow, opc_baload, opc_bastore, opc_bipush, opc_caload, opc_castore, opc_checkcast, opc_d2f, opc_d2i, opc_d2l, opc_dadd, opc_daload, opc_dastore, opc_dcmpg, opc_dcmpl, opc_dconst_0, opc_dconst_1, opc_ddiv, opc_dload, opc_dload_0, opc_dload_1, opc_dload_2, opc_dload_3, opc_dmul, opc_dneg, opc_drem, opc_dreturn, opc_dstore, opc_dstore_0, opc_dstore_1, opc_dstore_2, opc_dstore_3, opc_dsub, opc_dup, opc_dup_x1, opc_dup_x2, opc_dup2, opc_dup2_x1, opc_dup2_x2, opc_f2d, opc_f2i, opc_f2l, opc_fadd, opc_faload, opc_fastore, opc_fcmpg, opc_fcmpl, opc_fconst_0, opc_fconst_1, opc_fconst_2, opc_fdiv, opc_fload, opc_fload_0, opc_fload_1, opc_fload_2, opc_fload_3, opc_fmul, opc_fneg, opc_frem, opc_freturn, opc_fstore, opc_fstore_0, opc_fstore_1, opc_fstore_2, opc_fstore_3, opc_fsub, opc_getfield, opc_getstatic, opc_goto, opc_goto_w, opc_i2b, opc_i2c, opc_i2d, opc_i2f, opc_i2l, opc_i2s, opc_iadd, opc_iaload, opc_iand, opc_iastore, opc_iconst_0, opc_iconst_1, opc_iconst_2, opc_iconst_3, opc_iconst_4, opc_iconst_5, opc_iconst_m1, opc_idiv, opc_if_acmpeq, opc_if_acmpne, opc_if_icmpeq, opc_if_icmpge, opc_if_icmpgt, opc_if_icmple, opc_if_icmplt, opc_if_icmpne, opc_ifeq, opc_ifge, opc_ifgt, opc_ifle, opc_iflt, opc_ifne, opc_ifnonnull, opc_ifnull, opc_iinc, opc_iload, opc_iload_0, opc_iload_1, opc_iload_2, opc_iload_3, opc_imul, opc_ineg, opc_instanceof, opc_invokedynamic, opc_invokeinterface, opc_invokespecial, opc_invokestatic, opc_invokevirtual, opc_ior, opc_irem, opc_ireturn, opc_ishl, opc_ishr, opc_istore, opc_istore_0, opc_istore_1, opc_istore_2, opc_istore_3, opc_isub, opc_iushr, opc_ixor, opc_jsr, opc_jsr_w, opc_l2d, opc_l2f, opc_l2i, opc_ladd, opc_laload, opc_land, opc_lastore, opc_lcmp, opc_lconst_0, opc_lconst_1, opc_ldc, opc_ldc_w, opc_ldc2_w, opc_ldiv, opc_lload, opc_lload_0, opc_lload_1, opc_lload_2, opc_lload_3, opc_lmul, opc_lneg, opc_lookupswitch, opc_lor, opc_lrem, opc_lreturn, opc_lshl, opc_lshr, opc_lstore, opc_lstore_0, opc_lstore_1, opc_lstore_2, opc_lstore_3, opc_lsub, opc_lushr, opc_lxor, opc_monitorenter, opc_monitorexit, opc_multianewarray, opc_new, opc_newarray, opc_nop, opc_pop, opc_pop2, opc_putfield, opc_putstatic, opc_ret, opc_return, opc_saload, opc_sastore, opc_sipush, opc_swap, opc_tableswitch, opc_wide, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, T_TWOWORD, T_UNKNOWN, T_WORD, TC_INTERFACE, TC_OBJECT, TC_STRING
 
Constructor Summary
  InsnInterfaceInvoke(ConstInterfaceMethodRef methodRefOp, int nArgsOp)
          constructor for opc_invokeinterface
(package private) InsnInterfaceInvoke(ConstInterfaceMethodRef methodRefOp, int nArgsOp, int offset)
           
 
Method Summary
 java.lang.String argTypes()
          What are the types of the stack operands ?
 boolean branches()
          Does this instruction branch?
 boolean isEqual(java.util.Stack msg, java.lang.Object obj)
          Compares this instance with another for structural equality.
 ConstInterfaceMethodRef method()
          Return the interface to be invoked
 int nArgs()
          Return the number of arguments to the interface
 int nStackArgs()
          How many words of stack operands does this instruction take?
 int nStackResults()
          How many words of stack results does this instruction deposit?
(package private)  void print(java.io.PrintStream out, int indent)
           
(package private) static InsnInterfaceInvoke read(InsnReadEnv insnEnv, int myPC)
           
 java.lang.String resultTypes()
          What are the types of the stack results?
(package private)  int size()
           
(package private)  int store(byte[] buf, int index)
           
 
Methods inherited from class org.apache.jdo.impl.enhancer.classfile.InsnConstOp
setValue, value
 
Methods inherited from class org.apache.jdo.impl.enhancer.classfile.Insn
append, create, create, create, create, insert, loadStoreDataType, markTargets, next, offset, opcode, opName, prev, printInsn, printList, read, remove, resolveOffset, setNext, storeInt, storeShort, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

nArgsOp

private int nArgsOp
Constructor Detail

InsnInterfaceInvoke

public InsnInterfaceInvoke(ConstInterfaceMethodRef methodRefOp,
                           int nArgsOp)
constructor for opc_invokeinterface


InsnInterfaceInvoke

InsnInterfaceInvoke(ConstInterfaceMethodRef methodRefOp,
                    int nArgsOp,
                    int offset)
Method Detail

nStackArgs

public int nStackArgs()
Description copied from class: Insn
How many words of stack operands does this instruction take?

Overrides:
nStackArgs in class InsnConstOp

nStackResults

public int nStackResults()
Description copied from class: Insn
How many words of stack results does this instruction deposit?

Overrides:
nStackResults in class InsnConstOp

argTypes

public java.lang.String argTypes()
What are the types of the stack operands ?

Overrides:
argTypes in class InsnConstOp

resultTypes

public java.lang.String resultTypes()
What are the types of the stack results?

Overrides:
resultTypes in class InsnConstOp

branches

public boolean branches()
Description copied from class: Insn
Does this instruction branch?

Overrides:
branches in class InsnConstOp

method

public ConstInterfaceMethodRef method()
Return the interface to be invoked


nArgs

public int nArgs()
Return the number of arguments to the interface


isEqual

public boolean isEqual(java.util.Stack msg,
                       java.lang.Object obj)
Compares this instance with another for structural equality.

Overrides:
isEqual in class InsnConstOp

print

void print(java.io.PrintStream out,
           int indent)
Overrides:
print in class InsnConstOp

store

int store(byte[] buf,
          int index)
Overrides:
store in class InsnConstOp

size

int size()
Overrides:
size in class InsnConstOp

read

static InsnInterfaceInvoke read(InsnReadEnv insnEnv,
                                int myPC)