Class CallFrameV2

All Implemented Interfaces:
Serializable

public class CallFrameV2 extends ACallFrame<CallFrameV2,CompilerData<?>> implements Serializable
See Also:
  • Field Details

    • pcPrevBranch

      public int pcPrevBranch
    • shouldYieldToParent

      public boolean shouldYieldToParent
    • generatorState

      public GeneratorState generatorState
  • Constructor Details

  • Method Details

    • push

      public void push(Object val)
    • push

      public void push(int val)
    • push

      public void push(double val)
    • push

      public void push(Object val, double doubleVal)
    • popResult

      public void popResult()
    • pop

      public Object pop()
    • popDouble

      public double popDouble()
    • peek

      public Object peek(int offset)
    • peek

      public Object peek()
    • peekDouble

      public double peekDouble(int offset)
    • peekDouble

      public double peekDouble()
    • isStackEmpty

      public boolean isStackEmpty()
    • saveExceptionScope

      public void saveExceptionScope(int exceptionIndex, VarScope scope)
    • saveSubRoutineReturnPC

      public void saveSubRoutineReturnPC(int returnPcOffset, double subRoutineReturnPC)
    • hasSubRoutineReturnPC

      public boolean hasSubRoutineReturnPC(int returnPcOffset)
    • getSubRoutineReturnPC

      public double getSubRoutineReturnPC(int returnPcOffset)
    • getVarAndWrap

      public Object getVarAndWrap(int index)
    • getVar

      public Object getVar(int index)
    • isVarDouble

      public boolean isVarDouble(int index)
    • getVarDouble

      public double getVarDouble(int index)
    • setVar

      public void setVar(int index, Object value)
    • setVar

      public void setVar(int index, double value)
    • setVar

      public void setVar(int index, Object value, double doubleValue)
    • getVarAttribute

      public int getVarAttribute(int index)
    • setVarAttribute

      public void setVarAttribute(int index, int attributes)
    • resetVarAttributes

      public void resetVarAttributes(int index, int attributes)
    • getLocal

      public Object getLocal(int index)
    • getLocalDouble

      public double getLocalDouble(int index)
    • setLocal

      public void setLocal(int index, Object value)
    • setResult

      public void setResult(Object value)
    • setResult

      public void setResult(double value)
    • getArguments

      public Object[] getArguments(Context cx, Operand[] arguments)
    • getFrameIndex

      public int getFrameIndex()
      Description copied from class: ACallFrame
      Returns the index of this frame in the call stack (0 for the top-level frame).
      Specified by:
      getFrameIndex in class ACallFrame<CallFrameV2,CompilerData<?>>
    • getParentFrame

      public CallFrameV2 getParentFrame()
      Description copied from class: ACallFrame
      Returns the parent frame, or null if this is the top-level frame.
      Specified by:
      getParentFrame in class ACallFrame<CallFrameV2,CompilerData<?>>
    • getPcSourceLineStart

      public int getPcSourceLineStart()
      Description copied from class: ACallFrame
      Returns the program counter position for source line information. For the original interpreter, this is the PC at the start of the current source line. For InterpreterV2, this may be the current PC.
      Specified by:
      getPcSourceLineStart in class ACallFrame<CallFrameV2,CompilerData<?>>
    • getData

      public DebuggableScript getData()
      Description copied from class: ACallFrame
      Returns the debuggable script data associated with this frame.
      Specified by:
      getData in class ACallFrame<CallFrameV2,CompilerData<?>>
    • getFnOrScript

      public ScriptOrFn<?> getFnOrScript()
      Overrides:
      getFnOrScript in class ACallFrame<CallFrameV2,CompilerData<?>>
    • getParentPC

      public int getParentPC()
      Overrides:
      getParentPC in class ACallFrame<CallFrameV2,CompilerData<?>>
    • cloneFrozen

      public CallFrameV2 cloneFrozen()
    • captureForGenerator

      public CallFrameV2 captureForGenerator()
    • shallowCloneFrozen

      public CallFrameV2 shallowCloneFrozen(ACallFrame newPreviousInterpreterFrame)
    • syncStateToFrame

      public void syncStateToFrame(CallFrameV2 otherFrame)
    • popN

      public void popN(int n)