Class Frame


  • public class Frame
    extends java.lang.Object
    An activation frame.
    • Field Detail

      • numMonitorsActive

        int numMonitorsActive
      • stacklen

        int stacklen
    • Constructor Detail

      • Frame

        private Frame​(int nLocals,
                      int nStack,
                      boolean init)
      • Frame

        public Frame​(int nLocals,
                     int nStack)
      • Frame

        private Frame​(Value[] alocals,
                      Value[] astack,
                      int astacklen,
                      int aNumMonitorsActive)
      • Frame

        public Frame​(java.lang.String classDesc,
                     org.objectweb.asm.tree.MethodNode method)
    • Method Detail

      • merge

        public Frame merge​(Detector det,
                           Frame inframe,
                           boolean localsOnly,
                           Usage usage)
        Merge the local variables and stack from the incoming frame into the current frame.
        Parameters:
        inframe - -- incoming frame
        localsOnly - -- true for exception handlers, because the stack is cleared.
        usage - -- Only those locals are merged that are deemed live (@see Usage#isLiveIn(int))
        Returns:
        this, if the merge didn't change anything or a new Frame if the operation changed a slot on the stack or a local variable
      • dupArray

        public static Value[] dupArray​(Value[] a)
      • dup

        public Frame dup()
      • checkType

        private boolean checkType​(java.lang.String desc)
      • setLocal

        public int setLocal​(int local,
                            Value v)
      • getLocal

        public Value getLocal​(int local,
                              int opcode)
      • getLocal

        public Value getLocal​(int local)
      • getStack

        public Value getStack​(int pos)
      • pop

        public Value pop()
      • popWord

        public Value popWord()
      • popn

        public void popn​(int n)
      • clearStack

        void clearStack()
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • getMaxLocals

        public int getMaxLocals()
      • getStackLen

        public int getStackLen()