org.objectweb.asm.tree

Class AbstractInsnNode

public abstract class AbstractInsnNode extends Object

A node that represents a bytecode instruction. An instruction can appear at most once in at most one InsnList at a time.

Author: Eric Bruneton

Field Summary
static intFIELD_INSN
The type of FieldInsnNode instructions.
static intFRAME
The type of FrameNode "instructions".
static intIINC_INSN
The type of IincInsnNode instructions.
static intINSN
The type of InsnNode instructions.
static intINT_INSN
The type of IntInsnNode instructions.
static intJUMP_INSN
The type of JumpInsnNode instructions.
static intLABEL
The type of LabelNode "instructions".
static intLDC_INSN
The type of LdcInsnNode instructions.
static intLINE
The type of LineNumberNode "instructions".
static intLOOKUPSWITCH_INSN
The type of LookupSwitchInsnNode instructions.
static intMETHOD_INSN
The type of MethodInsnNode instructions.
static intMULTIANEWARRAY_INSN
The type of MultiANewArrayInsnNode instructions.
protected intopcode
The opcode of this instruction.
static intTABLESWITCH_INSN
The type of TableSwitchInsnNode instructions.
static intTYPE_INSN
The type of TypeInsnNode instructions.
static intVAR_INSN
The type of VarInsnNode instructions.
Constructor Summary
protected AbstractInsnNode(int opcode)
Constructs a new AbstractInsnNode.
Method Summary
abstract voidaccept(MethodVisitor cv)
Makes the given code visitor visit this instruction.
abstract AbstractInsnNodeclone(Map labels)
Returns a copy of this instruction.
AbstractInsnNodegetNext()
Returns the next instruction in the list to which this instruction belongs, if any.
intgetOpcode()
Returns the opcode of this instruction.
AbstractInsnNodegetPrevious()
Returns the previous instruction in the list to which this instruction belongs, if any.
abstract intgetType()
Returns the type of this instruction.

Field Detail

FIELD_INSN

public static final int FIELD_INSN
The type of FieldInsnNode instructions.

FRAME

public static final int FRAME
The type of FrameNode "instructions".

IINC_INSN

public static final int IINC_INSN
The type of IincInsnNode instructions.

INSN

public static final int INSN
The type of InsnNode instructions.

INT_INSN

public static final int INT_INSN
The type of IntInsnNode instructions.

JUMP_INSN

public static final int JUMP_INSN
The type of JumpInsnNode instructions.

LABEL

public static final int LABEL
The type of LabelNode "instructions".

LDC_INSN

public static final int LDC_INSN
The type of LdcInsnNode instructions.

LINE

public static final int LINE
The type of LineNumberNode "instructions".

LOOKUPSWITCH_INSN

public static final int LOOKUPSWITCH_INSN
The type of LookupSwitchInsnNode instructions.

METHOD_INSN

public static final int METHOD_INSN
The type of MethodInsnNode instructions.

MULTIANEWARRAY_INSN

public static final int MULTIANEWARRAY_INSN
The type of MultiANewArrayInsnNode instructions.

opcode

protected int opcode
The opcode of this instruction.

TABLESWITCH_INSN

public static final int TABLESWITCH_INSN
The type of TableSwitchInsnNode instructions.

TYPE_INSN

public static final int TYPE_INSN
The type of TypeInsnNode instructions.

VAR_INSN

public static final int VAR_INSN
The type of VarInsnNode instructions.

Constructor Detail

AbstractInsnNode

protected AbstractInsnNode(int opcode)
Constructs a new AbstractInsnNode.

Parameters: opcode the opcode of the instruction to be constructed.

Method Detail

accept

public abstract void accept(MethodVisitor cv)
Makes the given code visitor visit this instruction.

Parameters: cv a code visitor.

clone

public abstract AbstractInsnNode clone(Map labels)
Returns a copy of this instruction.

Parameters: labels a map from LabelNodes to cloned LabelNodes.

Returns: a copy of this instruction. The returned instruction does not belong to any InsnList.

getNext

public AbstractInsnNode getNext()
Returns the next instruction in the list to which this instruction belongs, if any.

Returns: the next instruction in the list to which this instruction belongs, if any. May be null.

getOpcode

public int getOpcode()
Returns the opcode of this instruction.

Returns: the opcode of this instruction.

getPrevious

public AbstractInsnNode getPrevious()
Returns the previous instruction in the list to which this instruction belongs, if any.

Returns: the previous instruction in the list to which this instruction belongs, if any. May be null.

getType

public abstract int getType()
Returns the type of this instruction.

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