org.codehaus.enunciate.asm.tree
Class JumpInsnNode

java.lang.Object
  extended by org.codehaus.enunciate.asm.tree.AbstractInsnNode
      extended by org.codehaus.enunciate.asm.tree.JumpInsnNode

public class JumpInsnNode
extends AbstractInsnNode

A node that represents a jump instruction. A jump instruction is an instruction that may jump to another instruction.

Author:
Eric Bruneton

Field Summary
 LabelNode label
          The operand of this instruction.
 
Fields inherited from class org.codehaus.enunciate.asm.tree.AbstractInsnNode
FIELD_INSN, FRAME, IINC_INSN, INSN, INT_INSN, JUMP_INSN, LABEL, LDC_INSN, LINE, LOOKUPSWITCH_INSN, METHOD_INSN, MULTIANEWARRAY_INSN, opcode, TABLESWITCH_INSN, TYPE_INSN, VAR_INSN
 
Constructor Summary
JumpInsnNode(int opcode, LabelNode label)
          Constructs a new JumpInsnNode.
 
Method Summary
 void accept(MethodVisitor mv)
          Makes the given code visitor visit this instruction.
 AbstractInsnNode clone(java.util.Map 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.codehaus.enunciate.asm.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

label

public LabelNode label
The operand of this instruction. This operand is a label that designates the instruction to which this instruction may jump.

Constructor Detail

JumpInsnNode

public JumpInsnNode(int opcode,
                    LabelNode label)
Constructs a new JumpInsnNode.

Parameters:
opcode - the opcode of the type instruction to be constructed. This opcode must be IFEQ, IFNE, IFLT, IFGE, IFGT, IFLE, IF_ICMPEQ, IF_ICMPNE, IF_ICMPLT, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ACMPEQ, IF_ACMPNE, GOTO, JSR, IFNULL or IFNONNULL.
label - the operand of the instruction to be constructed. This operand is a label that designates the instruction to which the jump instruction may jump.
Method Detail

setOpcode

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

Parameters:
opcode - the new instruction opcode. This opcode must be IFEQ, IFNE, IFLT, IFGE, IFGT, IFLE, IF_ICMPEQ, IF_ICMPNE, IF_ICMPLT, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ACMPEQ, IF_ACMPNE, GOTO, JSR, IFNULL or IFNONNULL.

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 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.