org.objectweb.asm.tree

Class 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.objectweb.asm.tree.AbstractInsnNode

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

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(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.objectweb.asm.tree.AbstractInsnNode

accept, clone, getNext, getOpcode, getPrevious, getType

Field Details

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 Details

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 Details

accept

public void accept(MethodVisitor mv)
Makes the given code visitor visit this instruction.
Overrides:
accept in interface AbstractInsnNode
Parameters:

clone

public AbstractInsnNode clone(Map labels)
Returns a copy of this instruction.
Overrides:
clone in interface 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.

getType

public int getType()
Returns the type of this instruction.
Overrides:
getType in interface AbstractInsnNode
Returns:
the type of this instruction, i.e. one the constants defined in this class.

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.