org.apache.bcel.generic
Class FieldInstruction
java.lang.Object
org.apache.bcel.generic.Instruction
org.apache.bcel.generic.CPInstruction
org.apache.bcel.generic.FieldOrMethod
org.apache.bcel.generic.FieldInstruction
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, IndexedInstruction, LoadClass, TypedInstruction
- Direct Known Subclasses:
- GETFIELD, GETSTATIC, PUTFIELD, PUTSTATIC
public abstract class FieldInstruction
- extends FieldOrMethod
- implements TypedInstruction
Super class for the GET/PUTxxx family of instructions.
- Version:
- $Id: FieldInstruction.java 386056 2006-03-15 11:31:56Z tcurdt $
- Author:
- M. Dahm
- See Also:
- Serialized Form
Constructor Summary |
(package private) |
FieldInstruction()
Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction(). |
protected |
FieldInstruction(short opcode,
int index)
|
Methods inherited from class org.apache.bcel.generic.Instruction |
accept, consumeStack, copy, dispose, equals, getComparator, getLength, getName, getOpcode, produceStack, readInstruction, setComparator, toString |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
FieldInstruction
FieldInstruction()
- Empty constructor needed for the Class.newInstance() statement in
Instruction.readInstruction(). Not to be used otherwise.
FieldInstruction
protected FieldInstruction(short opcode,
int index)
- Parameters:
index
- to constant pool
toString
public java.lang.String toString(ConstantPool cp)
- Overrides:
toString
in class CPInstruction
- Returns:
- mnemonic for instruction with symbolic references resolved
getFieldSize
protected int getFieldSize(ConstantPoolGen cpg)
- Returns:
- size of field (1 or 2)
getType
public Type getType(ConstantPoolGen cpg)
- Description copied from interface:
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 LoadClass
- Specified by:
getType
in interface TypedInstruction
- Overrides:
getType
in class CPInstruction
- Returns:
- return type of referenced field
- See Also:
LoadClass.getLoadClassType(ConstantPoolGen)
getFieldType
public Type getFieldType(ConstantPoolGen cpg)
- Returns:
- type of field
getFieldName
public java.lang.String getFieldName(ConstantPoolGen cpg)
- Returns:
- name of referenced field.