Class AtlStackFrame

java.lang.Object
org.eclipse.core.runtime.PlatformObject
org.eclipse.m2m.atl.debug.core.AtlDebugElement
org.eclipse.m2m.atl.debug.core.AtlStackFrame
All Implemented Interfaces:
org.eclipse.core.runtime.IAdaptable, org.eclipse.debug.core.model.IDebugElement, org.eclipse.debug.core.model.IStackFrame, org.eclipse.debug.core.model.IStep, org.eclipse.debug.core.model.ISuspendResume, org.eclipse.debug.core.model.ITerminate

public class AtlStackFrame extends AtlDebugElement implements org.eclipse.debug.core.model.IStackFrame
This class implements IStackFrame It contains a stackframe.
  • Constructor Details

    • AtlStackFrame

      public AtlStackFrame(AtlThread thread, ObjectReference stackFrame, AtlNbCharFile atlnbcharfile, org.eclipse.core.resources.IFile sourcefile)
      Creates a new AtlStackFrame for Eclipse-based debugging.
      Parameters:
      thread - The ATL execution thread
      stackFrame - The ASMStackFrame to encapsulate
      atlnbcharfile - The source code lookup helper
      sourcefile - The file containing the source code
  • Method Details

    • getThread

      public org.eclipse.debug.core.model.IThread getThread()
      Specified by:
      getThread in interface org.eclipse.debug.core.model.IStackFrame
      See Also:
      • IStackFrame.getThread()
    • getVariables

      public org.eclipse.debug.core.model.IVariable[] getVariables() throws org.eclipse.debug.core.DebugException
      Specified by:
      getVariables in interface org.eclipse.debug.core.model.IStackFrame
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • IStackFrame.getVariables()
    • hasVariables

      public boolean hasVariables() throws org.eclipse.debug.core.DebugException
      Specified by:
      hasVariables in interface org.eclipse.debug.core.model.IStackFrame
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • IStackFrame.hasVariables()
    • getLineNumber

      public int getLineNumber() throws org.eclipse.debug.core.DebugException
      Specified by:
      getLineNumber in interface org.eclipse.debug.core.model.IStackFrame
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • IStackFrame.getLineNumber()
    • getCharStart

      public int getCharStart() throws org.eclipse.debug.core.DebugException
      Specified by:
      getCharStart in interface org.eclipse.debug.core.model.IStackFrame
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • IStackFrame.getCharStart()
    • getCharEnd

      public int getCharEnd() throws org.eclipse.debug.core.DebugException
      Specified by:
      getCharEnd in interface org.eclipse.debug.core.model.IStackFrame
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • IStackFrame.getCharEnd()
    • getName

      public String getName() throws org.eclipse.debug.core.DebugException
      Specified by:
      getName in interface org.eclipse.debug.core.model.IStackFrame
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • IStackFrame.getName()
    • getRegisterGroups

      public org.eclipse.debug.core.model.IRegisterGroup[] getRegisterGroups() throws org.eclipse.debug.core.DebugException
      Specified by:
      getRegisterGroups in interface org.eclipse.debug.core.model.IStackFrame
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • IStackFrame.getRegisterGroups()
    • hasRegisterGroups

      public boolean hasRegisterGroups() throws org.eclipse.debug.core.DebugException
      Specified by:
      hasRegisterGroups in interface org.eclipse.debug.core.model.IStackFrame
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • IStackFrame.hasRegisterGroups()
    • getDebugTarget

      public org.eclipse.debug.core.model.IDebugTarget getDebugTarget()
      Specified by:
      getDebugTarget in interface org.eclipse.debug.core.model.IDebugElement
      Overrides:
      getDebugTarget in class AtlDebugElement
      See Also:
    • getLaunch

      public org.eclipse.debug.core.ILaunch getLaunch()
      Specified by:
      getLaunch in interface org.eclipse.debug.core.model.IDebugElement
      Overrides:
      getLaunch in class AtlDebugElement
      See Also:
    • canStepInto

      public boolean canStepInto()
      Specified by:
      canStepInto in interface org.eclipse.debug.core.model.IStep
      See Also:
      • IStep.canStepInto()
    • canStepOver

      public boolean canStepOver()
      Specified by:
      canStepOver in interface org.eclipse.debug.core.model.IStep
      See Also:
      • IStep.canStepOver()
    • canStepReturn

      public boolean canStepReturn()
      Specified by:
      canStepReturn in interface org.eclipse.debug.core.model.IStep
      See Also:
      • IStep.canStepReturn()
    • isStepping

      public boolean isStepping()
      Specified by:
      isStepping in interface org.eclipse.debug.core.model.IStep
      See Also:
      • IStep.isStepping()
    • stepInto

      public void stepInto() throws org.eclipse.debug.core.DebugException
      Specified by:
      stepInto in interface org.eclipse.debug.core.model.IStep
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • IStep.stepInto()
    • stepOver

      public void stepOver() throws org.eclipse.debug.core.DebugException
      Specified by:
      stepOver in interface org.eclipse.debug.core.model.IStep
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • IStep.stepOver()
    • stepReturn

      public void stepReturn() throws org.eclipse.debug.core.DebugException
      Specified by:
      stepReturn in interface org.eclipse.debug.core.model.IStep
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • IStep.stepReturn()
    • canResume

      public boolean canResume()
      Specified by:
      canResume in interface org.eclipse.debug.core.model.ISuspendResume
      See Also:
      • ISuspendResume.canResume()
    • canSuspend

      public boolean canSuspend()
      Specified by:
      canSuspend in interface org.eclipse.debug.core.model.ISuspendResume
      See Also:
      • ISuspendResume.canSuspend()
    • isSuspended

      public boolean isSuspended()
      Specified by:
      isSuspended in interface org.eclipse.debug.core.model.ISuspendResume
      See Also:
      • ISuspendResume.isSuspended()
    • resume

      public void resume() throws org.eclipse.debug.core.DebugException
      Specified by:
      resume in interface org.eclipse.debug.core.model.ISuspendResume
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • ISuspendResume.resume()
    • suspend

      public void suspend() throws org.eclipse.debug.core.DebugException
      Specified by:
      suspend in interface org.eclipse.debug.core.model.ISuspendResume
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • ISuspendResume.suspend()
    • canTerminate

      public boolean canTerminate()
      Specified by:
      canTerminate in interface org.eclipse.debug.core.model.ITerminate
      See Also:
      • ITerminate.canTerminate()
    • isTerminated

      public boolean isTerminated()
      Specified by:
      isTerminated in interface org.eclipse.debug.core.model.ITerminate
      See Also:
      • ITerminate.isTerminated()
    • terminate

      public void terminate() throws org.eclipse.debug.core.DebugException
      Specified by:
      terminate in interface org.eclipse.debug.core.model.ITerminate
      Throws:
      org.eclipse.debug.core.DebugException
      See Also:
      • ITerminate.terminate()
    • getDisassembled

      public org.eclipse.core.resources.IStorage getDisassembled()
      Returns the disassembled IStorage.
      Returns:
      the disassembled IStorage
    • getStackFrame

      public ObjectReference getStackFrame()
    • getSourcefile

      public org.eclipse.core.resources.IFile getSourcefile()
      Returns the ATL source code file that is being executed in this stack frame.
      Returns:
      The ATL source code file that is being executed in this stack frame