org.eclipse.wst.jsdt.chromium.debug.core.model

## Class StackFrame

- java.lang.Object
- - PlatformObject
  - - org.eclipse.wst.jsdt.chromium.debug.core.model.DebugElementImpl
    - - org.eclipse.wst.jsdt.chromium.debug.core.model.DebugElementImpl.WithConnectedBase
      - - org.eclipse.wst.jsdt.chromium.debug.core.model.DebugElementImpl.WithSuspendedBase
        - - org.eclipse.wst.jsdt.chromium.debug.core.model.DebugElementImpl.WithEvaluateBase
          - - org.eclipse.wst.jsdt.chromium.debug.core.model.DebugElementImpl.WithEvaluate
            - - org.eclipse.wst.jsdt.chromium.debug.core.model.StackFrameBase
              - - org.eclipse.wst.jsdt.chromium.debug.core.model.StackFrame

All Implemented Interfaces:
  IJavaScriptStackFrame

    public class StackFrame
    extends StackFrameBase
    implements IJavaScriptStackFrame

An IStackFrame implementation over a JsStackFrame instance.

### Nested Class Summary

### Nested classes/interfaces inherited from class org.eclipse.wst.jsdt.chromium.debug.core.model.DebugElementImpl

`DebugElementImpl.WithConnected, DebugElementImpl.WithConnectedBase, DebugElementImpl.WithEvaluate, DebugElementImpl.WithEvaluateBase, DebugElementImpl.WithSuspended, DebugElementImpl.WithSuspendedBase`

### Constructor Summary

Constructors
Constructor and Description
`StackFrame(JavascriptThread.SuspendedState threadState, CallFrame stackFrame)` Constructs a stack frame for the given handler using the FrameMirror data from the remote V8 VM.

### Method Summary

All Methods Instance Methods Concrete Methods
`boolean` `canDropToFrame()`
`void` `dropToFrame()`
`IJavaScriptValue` `evaluate(java.lang.String expression)` Allows the given expression to be evaluated and returns the `Value` of the evaluation.
`java.lang.Object` `getAdapter(java.lang.Class adapter)`
`CallFrame` `getCallFrame()`
`int` `getCharEnd()`
`int` `getCharStart()`
`int` `getLineNumber()`
`java.lang.String` `getName()`
`java.lang.String` `getSource()` Returns the underlying source for the frame.
`java.lang.String` `getSourceName()` Returns the name of the source backing the stack frame.
`java.lang.String` `getSourcePath()` Returns the path to the source.
`IVariable` `getThisObject()` Returns the `IVariable` for the `this` object.
`IVariable[]` `getVariables()`
`VmResourceId` `getVmResourceId()`
`boolean` `hasVariables()`

### Methods inherited from class org.eclipse.wst.jsdt.chromium.debug.core.model.StackFrameBase

`canResume, canStepInto, canStepOver, canStepReturn, canSuspend, canTerminate, equals, getRegisterGroups, getThread, hashCode, hasRegisterGroups, isStepping, isSuspended, isTerminated, resume, stepInto, stepOver, stepReturn, suspend, terminate`

### Methods inherited from class org.eclipse.wst.jsdt.chromium.debug.core.model.DebugElementImpl.WithEvaluate

`getEvaluateContext`

### Methods inherited from class org.eclipse.wst.jsdt.chromium.debug.core.model.DebugElementImpl.WithEvaluateBase

`getSuspendedState`

### Methods inherited from class org.eclipse.wst.jsdt.chromium.debug.core.model.DebugElementImpl.WithSuspendedBase

`getConnectedData`

### Methods inherited from class org.eclipse.wst.jsdt.chromium.debug.core.model.DebugElementImpl.WithConnectedBase

`getDebugTarget`

### Methods inherited from class org.eclipse.wst.jsdt.chromium.debug.core.model.DebugElementImpl

`getLaunch, getModelIdentifier`

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

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

### Constructor Detail

#### StackFrame

    public StackFrame(JavascriptThread.SuspendedState threadState,
                      CallFrame stackFrame)

Constructs a stack frame for the given handler using the FrameMirror data from the remote V8 VM.

Parameters:
  `debugTarget` - the global parent
  `thread` - for which the stack frame is created
  `stackFrame` - an underlying SDK stack frame

### Method Detail

#### getCallFrame

    public CallFrame getCallFrame()

#### getVariables

    public IVariable[] getVariables()
                             throws DebugException

Throws:
  `DebugException`

#### hasVariables

    public boolean hasVariables()
                         throws DebugException

Throws:
  `DebugException`

#### canDropToFrame

    public boolean canDropToFrame()

#### dropToFrame

    public void dropToFrame()
                     throws DebugException

Throws:
  `DebugException`

#### getLineNumber

    public int getLineNumber()
                      throws DebugException

Throws:
  `DebugException`

#### getCharStart

    public int getCharStart()
                     throws DebugException

Throws:
  `DebugException`

#### getCharEnd

    public int getCharEnd()
                   throws DebugException

Throws:
  `DebugException`

#### getName

    public java.lang.String getName()
                             throws DebugException

Throws:
  `DebugException`

#### getVmResourceId

    public VmResourceId getVmResourceId()

Returns:
  nullable

#### evaluate

    public IJavaScriptValue evaluate(java.lang.String expression)

Description copied from interface: `IJavaScriptStackFrame`
Allows the given expression to be evaluated and returns the `Value` of the evaluation.
This method cannot return `null` and will return a value with `NullValue` instead.

Specified by:
  `evaluate` in interface `IJavaScriptStackFrame`
Parameters:
  `expression` - the expression to evaluate, `null` is accepted and will cause a value backed by `NullValue` to be returned
Returns:
  the `IJavaScriptValue` from the evaluation never `null`

#### getSourceName

    public java.lang.String getSourceName()

Description copied from interface: `IJavaScriptStackFrame`
Returns the name of the source backing the stack frame.
This method can return `null`

Specified by:
  `getSourceName` in interface `IJavaScriptStackFrame`
Returns:
  the name of the source or `null`

#### getSourcePath

    public java.lang.String getSourcePath()

Description copied from interface: `IJavaScriptStackFrame`
Returns the path to the source.
This method can return `null`

Specified by:
  `getSourcePath` in interface `IJavaScriptStackFrame`
Returns:
  the path to the source or `null`

#### getSource

    public java.lang.String getSource()

Description copied from interface: `IJavaScriptStackFrame`
Returns the underlying source for the frame.
This method can return `null` if the source cannot be acquired

Specified by:
  `getSource` in interface `IJavaScriptStackFrame`
Returns:
  the underlying source or `null`

#### getThisObject

    public IVariable getThisObject()

Description copied from interface: `IJavaScriptStackFrame`
Returns the `IVariable` for the `this` object.
This method can return `null`

Specified by:
  `getThisObject` in interface `IJavaScriptStackFrame`
Returns:
  the `this` `IVariable`

#### getAdapter

    public java.lang.Object getAdapter(java.lang.Class adapter)

Overrides:
  `getAdapter` in class `StackFrameBase`