Eclipse Platform Release 3.7

## org.eclipse.debug.core.model
Interface IStep

All Known Subinterfaces:
  IFilteredStep, IStackFrame, IThread

    public interface IStep

Provides the ability to step into, over, and return from the current execution location. Implementations must be non-blocking.

Implementations should honor step filter settings in their associated debug target, as defined by `IStepFilters`.

Clients may implement this interface.

See Also:
  `IStepFilters`

Method Summary
`boolean` `canStepInto()` Returns whether this element can currently perform a step into.
`boolean` `canStepOver()` Returns whether this element can currently perform a step over.
`boolean` `canStepReturn()` Returns whether this element can currently perform a step return.
`boolean` `isStepping()` Returns whether this element is currently stepping.
`void` `stepInto()` Steps into the current statement, generating `RESUME` and `SUSPEND` events for the associated thread.
`void` `stepOver()` Steps over the current statement, generating `RESUME` and `SUSPEND` events for the associated thread.
`void` `stepReturn()` Steps to the next return statement in the current scope, generating `RESUME` and `SUSPEND` events for the associated thread.

Method Detail

### canStepInto

    boolean canStepInto()

  Returns whether this element can currently perform a step into.

  Returns:
    whether this element can currently perform a step into

### canStepOver

    boolean canStepOver()

  Returns whether this element can currently perform a step over.

  Returns:
    whether this element can currently perform a step over

### canStepReturn

    boolean canStepReturn()

  Returns whether this element can currently perform a step return.

  Returns:
    whether this element can currently perform a step return

### isStepping

    boolean isStepping()

  Returns whether this element is currently stepping.

  For example, a thread is considered to be stepping after the `stepOver` call until the step over is completed, a breakpoint is reached, an exception is thrown, or the thread or debug target is terminated.

  Returns:
    whether this element is currently stepping

### stepInto

    void stepInto()
                  throws DebugException

  Steps into the current statement, generating `RESUME` and `SUSPEND` events for the associated thread. Can only be called when the associated thread is suspended. Implementations must implement stepping as non-blocking.

  Throws:
    `DebugException` - on failure. Reasons include:
    - TARGET_REQUEST_FAILED - The request failed in the target
    - NOT_SUPPORTED - The capability is not supported by the target

### stepOver

    void stepOver()
                  throws DebugException

  Steps over the current statement, generating `RESUME` and `SUSPEND` events for the associated thread. Can only be called when the associated thread is suspended. Implementations must implement stepping as non-blocking.

  Throws:
    `DebugException` - on failure. Reasons include:
    - TARGET_REQUEST_FAILED - The request failed in the target
    - NOT_SUPPORTED - The capability is not supported by the target

### stepReturn

    void stepReturn()
                    throws DebugException

  Steps to the next return statement in the current scope, generating `RESUME` and `SUSPEND` events for the associated thread. Can only be called when the associated thread is suspended. Implementations must implement stepping as non-blocking.

  Throws:
    `DebugException` - on failure. Reasons include:
    - TARGET_REQUEST_FAILED - The request failed in the target
    - NOT_SUPPORTED - The capability is not supported by the target

Eclipse Platform Release 3.7

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2011. All rights reserved.