org.eclipse.m2m.atl.debug.core
Class AtlStackFrame

java.lang.Object
  extended by org.eclipse.core.runtime.PlatformObject
      extended by org.eclipse.m2m.atl.debug.core.AtlDebugElement
          extended by 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
AtlStackFrame(AtlThread thread, ObjectReference stackFrame, AtlNbCharFile atlnbcharfile, org.eclipse.core.resources.IFile sourcefile)
          Creates a new AtlStackFrame for Eclipse-based debugging.
 
Method Summary
 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.debug.core.model.IDebugElement
getModelIdentifier
 
Methods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapter
 

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

Copyright 2007 IBM Corporation and others.
All Rights Reserved.