JumpInsnNode (ASM 5.0.4 Documentation)
Date: 2015-09-18

org.objectweb.asm.tree

## Class JumpInsnNode

- java.lang.Object
- - org.objectweb.asm.tree.AbstractInsnNode
  - - org.objectweb.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

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `LabelNode` | `label` The operand of this instruction.

    - ### Fields inherited from class org.objectweb.asm.tree.AbstractInsnNode

      `FIELD_INSN, FRAME, IINC_INSN, INSN, INT_INSN, invisibleTypeAnnotations, INVOKE_DYNAMIC_INSN, JUMP_INSN, LABEL, LDC_INSN, LINE, LOOKUPSWITCH_INSN, METHOD_INSN, MULTIANEWARRAY_INSN, opcode, TABLESWITCH_INSN, TYPE_INSN, VAR_INSN, visibleTypeAnnotations`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JumpInsnNode(int opcode, LabelNode label)` Constructs a new `JumpInsnNode`.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `accept(MethodVisitor mv)` Makes the given code visitor visit this instruction.
    `AbstractInsnNode` | `clone(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.objectweb.asm.tree.AbstractInsnNode

      `acceptAnnotations, cloneAnnotations, 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(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`.