Package org.eclipse.m2m.atl.debug.core

## 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.

### Field Summary

### Fields inherited from class org.eclipse.m2m.atl.debug.core.AtlDebugElement

`fTarget`

### Constructor Summary

Constructors
`AtlStackFrame​(AtlThread thread, ObjectReference stackFrame, AtlNbCharFile atlnbcharfile, org.eclipse.core.resources.IFile sourcefile)` Creates a new AtlStackFrame for Eclipse-based debugging.

### Method Summary

All Methods Instance Methods Concrete Methods
`boolean` `canResume()`
`boolean` `canStepInto()`
`boolean` `canStepOver()`
`boolean` `canStepReturn()`
`boolean` `canSuspend()`
`boolean` `canTerminate()`
`int` `getCharEnd()`
`int` `getCharStart()`
`org.eclipse.debug.core.model.IDebugTarget` `getDebugTarget()`
`org.eclipse.core.resources.IStorage` `getDisassembled()` Returns the disassembled IStorage.
`org.eclipse.debug.core.ILaunch` `getLaunch()`
`int` `getLineNumber()`
`java.lang.String` `getName()`
`org.eclipse.debug.core.model.IRegisterGroup[]` `getRegisterGroups()`
`org.eclipse.core.resources.IFile` `getSourcefile()` Returns the ATL source code file that is being executed in this stack frame.
`ObjectReference` `getStackFrame()`
`org.eclipse.debug.core.model.IThread` `getThread()`
`org.eclipse.debug.core.model.IVariable[]` `getVariables()`
`boolean` `hasRegisterGroups()`
`boolean` `hasVariables()`
`boolean` `isStepping()`
`boolean` `isSuspended()`
`boolean` `isTerminated()`
`void` `resume()`
`void` `stepInto()`
`void` `stepOver()`
`void` `stepReturn()`
`void` `suspend()`
`void` `terminate()`

### Methods inherited from class org.eclipse.m2m.atl.debug.core.AtlDebugElement

`abort, getAdapter, getModelIdentifier`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.eclipse.core.runtime.IAdaptable

`getAdapter`

### Methods inherited from interface org.eclipse.debug.core.model.IDebugElement

`getModelIdentifier`

### Constructor Detail

#### 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 Detail

#### 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 java.lang.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:
  `AtlDebugElement.getDebugTarget()`

#### 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:
  `AtlDebugElement.getLaunch()`

#### 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