org.ow2.asmdex.tree
Class FieldInsnNode

java.lang.Object
  extended by org.ow2.asmdex.tree.AbstractInsnNode
      extended by org.ow2.asmdex.tree.FieldInsnNode

public class FieldInsnNode
extends AbstractInsnNode

Represents a field instruction. A field instruction is an instruction that loads or stores the value of a field of an object.

Author:
Eric Bruneton, Julien Névo (adaptation to AsmDex).

Field Summary
 java.lang.String desc
          The field's descriptor.
 java.lang.String name
          The field's name.
 int objectRegister
          The object register.
 java.lang.String owner
          The internal name of the field's owner class.
 int valueRegister
          The value register.
 
Fields inherited from class org.ow2.asmdex.tree.AbstractInsnNode
ARRAY_LENGTH_INSN, ARRAY_OPERATION_INSN, FIELD_INSN, FILL_ARRAY_DATA_INSN, INSN, INT_INSN, JUMP_INSN, LABEL_INSN, LINE, LOOKUPSWITCH_INSN, METHOD_INSN, MULTIANEWARRAY_INSN, opcode, OPERATION_INSN, STRING_INSN, TABLESWITCH_INSN, TYPE_INSN, VAR_INSN, VAR_INSN_LONG
 
Constructor Summary
FieldInsnNode(int opcode, java.lang.String owner, java.lang.String name, java.lang.String desc, int valueRegister, int objectRegister)
          Constructs a new FieldInsnNode.
 
Method Summary
 void accept(MethodVisitor mv)
          Makes the given code visitor visit this instruction.
 AbstractInsnNode clone(java.util.Map<LabelNode,LabelNode> labels)
          Returns a copy of this instruction.
 int getType()
          Returns the type of this instruction.
 void setOpcode(int opcode)
          Sets the opcode of this instruction.
 
Methods inherited from class org.ow2.asmdex.tree.AbstractInsnNode
getNext, getOpcode, getPrevious
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

owner

public java.lang.String owner
The internal name of the field's owner class.


name

public java.lang.String name
The field's name.


desc

public java.lang.String desc
The field's descriptor.


valueRegister

public int valueRegister
The value register.


objectRegister

public int objectRegister
The object register. Ignored for static operations.

Constructor Detail

FieldInsnNode

public FieldInsnNode(int opcode,
                     java.lang.String owner,
                     java.lang.String name,
                     java.lang.String desc,
                     int valueRegister,
                     int objectRegister)
Constructs a new FieldInsnNode.

Parameters:
opcode - the opcode of the type instruction to be visited. This opcode is either IinstanceOP and SstaticOP.
owner - the internal name of the field's owner class.
name - the field's name.
desc - the field's descriptor.
valueRegister - the value register.
objectRegister - the objectRegister. Ignored for static operations.
Method Detail

setOpcode

public void setOpcode(int opcode)
Sets the opcode of this instruction.

Parameters:
opcode - the new instruction opcode. This opcode must be GETSTATIC, PUTSTATIC, GETFIELD or PUTFIELD.

getType

public int getType()
Description copied from class: AbstractInsnNode
Returns the type of this instruction.

Specified by:
getType in class AbstractInsnNode
Returns:
the type of this instruction, i.e. one the constants defined in this class.

accept

public void accept(MethodVisitor mv)
Description copied from class: AbstractInsnNode
Makes the given code visitor visit this instruction.

Specified by:
accept in class AbstractInsnNode
Parameters:
mv - a code visitor.

clone

public AbstractInsnNode clone(java.util.Map<LabelNode,LabelNode> labels)
Description copied from class: AbstractInsnNode
Returns a copy of this instruction.

Specified by:
clone in class AbstractInsnNode
Parameters:
labels - a map from LabelNodes to cloned LabelNodes.
Returns:
a copy of this instruction. The returned instruction does not belong to any InsnList.