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:
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Returns whether this element can currently perform a step into.
    boolean
    Returns whether this element can currently perform a step over.
    boolean
    Returns whether this element can currently perform a step return.
    boolean
    Returns whether this element is currently stepping.
    void
    Steps into the current statement, generating RESUME and SUSPEND events for the associated thread.
    void
    Steps over the current statement, generating RESUME and SUSPEND events for the associated thread.
    void
    Steps to the next return statement in the current scope, generating RESUME and SUSPEND events for the associated thread.
  • Method Details

    • 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