org.ow2.asmdex.tree
Class ArrayOperationInsnNode

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

public class ArrayOperationInsnNode
extends AbstractInsnNode

A node that represents an operation on an array.

Author:
Julien Névo, based on the ASM framework.

Field Summary
 int arrayRegister
          The array register.
 int indexRegister
          The index register.
 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
ArrayOperationInsnNode(int opcode, int valueRegister, int arrayRegister, int indexRegister)
          Constructs a new ArrayOperationInsnNode.
 
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

valueRegister

public int valueRegister
The value register. May be source or destination register/pair.


arrayRegister

public int arrayRegister
The array register.


indexRegister

public int indexRegister
The index register.

Constructor Detail

ArrayOperationInsnNode

public ArrayOperationInsnNode(int opcode,
                              int valueRegister,
                              int arrayRegister,
                              int indexRegister)
Constructs a new ArrayOperationInsnNode.

Parameters:
opcode - the opcode of the instruction to be constructed. This opcode is either AGET(-xxx) or APUT(-xxx).
valueRegister -
arrayRegister -
indexRegister -
Method Detail

setOpcode

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

Parameters:
opcode - the new instruction opcode. This opcode is either AGET(-xxx) or APUT(-xxx).

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.