public class FrameNode extends AbstractInsnNode
V1_6.| Modifier and Type | Field and Description |
|---|---|
List<Object> |
local
The types of the local variables of this stack map frame.
|
List<Object> |
stack
The types of the operand stack elements of this stack map frame.
|
int |
type
The type of this frame.
|
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 and Description |
|---|
FrameNode(int type,
int nLocal,
Object[] local,
int nStack,
Object[] stack)
Constructs a new
FrameNode. |
| Modifier and Type | Method and Description |
|---|---|
void |
accept(MethodVisitor mv)
Makes the given visitor visit this stack map frame.
|
AbstractInsnNode |
clone(Map<LabelNode,LabelNode> labels)
Returns a copy of this instruction.
|
int |
getType()
Returns the type of this instruction.
|
acceptAnnotations, cloneAnnotations, getNext, getOpcode, getPreviouspublic int type
Opcodes.F_NEW for expanded
frames, or Opcodes.F_FULL, Opcodes.F_APPEND,
Opcodes.F_CHOP, Opcodes.F_SAME or
Opcodes.F_APPEND, Opcodes.F_SAME1 for compressed frames.public List<Object> local
MethodVisitor).public List<Object> stack
MethodVisitor).public FrameNode(int type,
int nLocal,
Object[] local,
int nStack,
Object[] stack)
FrameNode.type - the type of this frame. Must be Opcodes.F_NEW for
expanded frames, or Opcodes.F_FULL,
Opcodes.F_APPEND, Opcodes.F_CHOP,
Opcodes.F_SAME or Opcodes.F_APPEND,
Opcodes.F_SAME1 for compressed frames.nLocal - number of local variables of this stack map frame.local - the types of the local variables of this stack map frame.
Elements of this list can be Integer, String or LabelNode
objects (for primitive, reference and uninitialized types
respectively - see MethodVisitor).nStack - number of operand stack elements of this stack map frame.stack - the types of the operand stack elements of this stack map
frame. Elements of this list can be Integer, String or
LabelNode objects (for primitive, reference and uninitialized
types respectively - see MethodVisitor).public int getType()
AbstractInsnNodegetType in class AbstractInsnNodepublic void accept(MethodVisitor mv)
accept in class AbstractInsnNodemv - a method visitor.public AbstractInsnNode clone(Map<LabelNode,LabelNode> labels)
AbstractInsnNodeclone in class AbstractInsnNodelabels - a map from LabelNodes to cloned LabelNodes.InsnList.