类 FrameNode
java.lang.Object
cn.taketoday.bytecode.tree.AbstractInsnNode
cn.taketoday.bytecode.tree.FrameNode
A node that represents a stack map frame. These nodes are pseudo instruction nodes in order to be
inserted in an instruction list. In fact these nodes must(*) be inserted just before any
instruction node i that follows an unconditionnal branch instruction such as GOTO or
THROW, that is the target of a jump instruction, or that starts an exception handler block. The
stack map frame types must describe the values of the local variables and of the operand stack
elements just before i is executed.
(*) this is mandatory only for classes whose version is greater than or equal to
(*) this is mandatory only for classes whose version is greater than or equal to
Opcodes.V1_6.- 作者:
- Eric Bruneton
-
字段概要
字段修饰符和类型字段说明The types of the local variables of this stack map frame.The types of the operand stack elements of this stack map frame.intThe type of this frame.从类继承的字段 cn.taketoday.bytecode.tree.AbstractInsnNode
FIELD_INSN, FRAME, IINC_INSN, index, INSN, INT_INSN, invisibleTypeAnnotations, INVOKE_DYNAMIC_INSN, JUMP_INSN, LABEL, LDC_INSN, LINE, LOOKUPSWITCH_INSN, METHOD_INSN, MULTIANEWARRAY_INSN, nextInsn, opcode, previousInsn, TABLESWITCH_INSN, TYPE_INSN, VAR_INSN, visibleTypeAnnotations -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明voidaccept(MethodVisitor methodVisitor) Makes the given method visitor visit this instruction.private static Object[]Returns a copy of this instruction.intgetType()Returns the type of this instruction.从类继承的方法 cn.taketoday.bytecode.tree.AbstractInsnNode
acceptAnnotations, clone, clone, cloneAnnotations, getNext, getOpcode, getPrevious
-
字段详细资料
-
type
public int typeThe type of this frame. Must beOpcodes.F_NEWfor expanded frames, orOpcodes.F_FULL,Opcodes.F_APPEND,Opcodes.F_CHOP,Opcodes.F_SAMEorOpcodes.F_APPEND,Opcodes.F_SAME1for compressed frames. -
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 - seeMethodVisitor). -
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 - seeMethodVisitor).
-
-
构造器详细资料
-
FrameNode
private FrameNode() -
FrameNode
Constructs a newFrameNode.- 参数:
type- the type of this frame. Must beOpcodes.F_NEWfor expanded frames, orOpcodes.F_FULL,Opcodes.F_APPEND,Opcodes.F_CHOP,Opcodes.F_SAMEorOpcodes.F_APPEND,Opcodes.F_SAME1for compressed frames.numLocal- 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 - seeMethodVisitor).numStack- 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 - seeMethodVisitor).
-
-
方法详细资料
-
getType
public int getType()从类复制的说明:AbstractInsnNodeReturns the type of this instruction.- 指定者:
getType在类中AbstractInsnNode- 返回:
- the type of this instruction, i.e. one the constants defined in this class.
-
accept
从类复制的说明:AbstractInsnNodeMakes the given method visitor visit this instruction.- 指定者:
accept在类中AbstractInsnNode- 参数:
methodVisitor- a method visitor.
-
clone
从类复制的说明:AbstractInsnNodeReturns a copy of this instruction.- 指定者:
clone在类中AbstractInsnNode- 参数:
clonedLabels- a map from LabelNodes to cloned LabelNodes.- 返回:
- a copy of this instruction. The returned instruction does not belong to any
InsnList.
-
asArray
-