类 FrameNode


public class FrameNode extends AbstractInsnNode
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 Opcodes.V1_6.
作者:
Eric Bruneton
  • 字段详细资料

  • 构造器详细资料

    • FrameNode

      public FrameNode(int type, int numLocal, Object[] local, int numStack, Object[] stack)
      Constructs a new 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.
      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 - see MethodVisitor).
      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 - see MethodVisitor).
  • 方法详细资料