Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Compil3r.BytecodeAnalysis
Class Bytecodes.InvokeInstruction  view Bytecodes.InvokeInstruction download Bytecodes.InvokeInstruction.java

java.lang.Object
  extended byCompil3r.BytecodeAnalysis.Bytecodes.Instruction
      extended byCompil3r.BytecodeAnalysis.Bytecodes.CPInstruction
          extended byCompil3r.BytecodeAnalysis.Bytecodes.FieldOrMethod
              extended byCompil3r.BytecodeAnalysis.Bytecodes.InvokeInstruction
All Implemented Interfaces:
Bytecodes.ExceptionThrower, Bytecodes.LoadClass, Bytecodes.StackConsumer, Bytecodes.StackProducer, Bytecodes.TypedInstruction, java.lang.Cloneable, java.io.Serializable
Direct Known Subclasses:
Bytecodes.INVOKEINTERFACE, Bytecodes.INVOKESPECIAL, Bytecodes.INVOKESTATIC, Bytecodes.INVOKEVIRTUAL
Enclosing class:
Bytecodes

public abstract static class Bytecodes.InvokeInstruction
extends Bytecodes.FieldOrMethod
implements Bytecodes.ExceptionThrower, Bytecodes.TypedInstruction, Bytecodes.StackConsumer, Bytecodes.StackProducer


Field Summary
 
Fields inherited from class Compil3r.BytecodeAnalysis.Bytecodes.CPInstruction
index, o
 
Fields inherited from class Compil3r.BytecodeAnalysis.Bytecodes.Instruction
length, opcode
 
Constructor Summary
(package private) Bytecodes.InvokeInstruction()
          Empty constructor needed for the Class.newInstance() statement in Instruction.readInstruction().
protected Bytecodes.InvokeInstruction(short opcode, Clazz.jq_Method f)
           
 
Method Summary
 int consumeStack()
          Also works for instructions whose stack effect depends on the constant pool entry they reference.
 Clazz.jq_Type[] getArgumentTypes()
           
 Clazz.jq_Method getMethod()
           
 java.lang.String getMethodName()
           
 Clazz.jq_Type getReturnType()
           
 Clazz.jq_Type getType()
          Returns the type associated with this instruction.
 int produceStack()
          Also works for instructions whose stack effect depends on the constant pool entry they reference.
 java.lang.String toString()
          Convert this Object to a human-readable String.
 
Methods inherited from class Compil3r.BytecodeAnalysis.Bytecodes.FieldOrMethod
getClassName, getClassType, getLoadClassType, getName, getSignature, initFromFile
 
Methods inherited from class Compil3r.BytecodeAnalysis.Bytecodes.CPInstruction
dump, getIndex, getObject, setIndex, setObject, toString
 
Methods inherited from class Compil3r.BytecodeAnalysis.Bytecodes.Instruction
accept, copy, dispose, getLength, getOpcode, readInstruction
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface Compil3r.BytecodeAnalysis.Bytecodes.ExceptionThrower
getExceptions
 

Constructor Detail

Bytecodes.InvokeInstruction

Bytecodes.InvokeInstruction()
Empty constructor needed for the Class.newInstance() statement in Instruction.readInstruction(). Not to be used otherwise.


Bytecodes.InvokeInstruction

protected Bytecodes.InvokeInstruction(short opcode,
                                      Clazz.jq_Method f)
Method Detail

toString

public java.lang.String toString()
Description copied from class: java.lang.Object
Convert this Object to a human-readable String. There are no limits placed on how long this String should be or what it should contain. We suggest you make it as intuitive as possible to be able to place it into System.out.println() 55 and such.

It is typical, but not required, to ensure that this method never completes abruptly with a java.lang.RuntimeException.

This method will be called when performing string concatenation with this object. If the result is null, string concatenation will instead use "null".

The default implementation returns getClass().getName() + "@" + Integer.toHexString(hashCode()).

Overrides:
toString in class Bytecodes.CPInstruction

getMethod

public Clazz.jq_Method getMethod()

consumeStack

public int consumeStack()
Also works for instructions whose stack effect depends on the constant pool entry they reference.

Specified by:
consumeStack in interface Bytecodes.StackConsumer
Overrides:
consumeStack in class Bytecodes.Instruction

produceStack

public int produceStack()
Also works for instructions whose stack effect depends on the constant pool entry they reference.

Specified by:
produceStack in interface Bytecodes.StackProducer
Overrides:
produceStack in class Bytecodes.Instruction

getType

public Clazz.jq_Type getType()
Description copied from interface: Bytecodes.LoadClass
Returns the type associated with this instruction. LoadClass instances are always typed, but this type does not always refer to the type of the class or interface that it possibly forces to load. For example, GETFIELD would return the type of the field and not the type of the class where the field is defined. If no class is forced to be loaded, null is returned. An example for this is an ANEWARRAY instruction that creates an int[][].

Specified by:
getType in interface Bytecodes.TypedInstruction
Overrides:
getType in class Bytecodes.CPInstruction

getMethodName

public java.lang.String getMethodName()

getReturnType

public Clazz.jq_Type getReturnType()

getArgumentTypes

public Clazz.jq_Type[] getArgumentTypes()