Interface IDebuggerBreakpoint


public interface IDebuggerBreakpoint
Definition of a breakpoint.

About the flags: all flags are optional; for unspecified or unsupported flags, the underlying debugger will decide.

  • Field Details

    • BREAK_ON_FIELD_READ

      static final int BREAK_ON_FIELD_READ
      See Also:
    • BREAK_ON_FIELD_WRITE

      static final int BREAK_ON_FIELD_WRITE
      See Also:
    • BREAK_ON_ROUTINE_ENTRY

      static final int BREAK_ON_ROUTINE_ENTRY
      See Also:
    • BREAK_ON_ROUTINE_EXIT

      static final int BREAK_ON_ROUTINE_EXIT
      See Also:
    • BREAK_ON_CAUGHT_EXCEPTION

      static final int BREAK_ON_CAUGHT_EXCEPTION
      See Also:
    • BREAK_ON_UNCAUGHT_EXCEPTION

      static final int BREAK_ON_UNCAUGHT_EXCEPTION
      See Also:
    • BREAK_ON_EXCEPTION_SUBTYPES

      static final int BREAK_ON_EXCEPTION_SUBTYPES
      See Also:
    • BREAK_ON_CODE

      static final int BREAK_ON_CODE
      See Also:
    • SUSPEND_THREAD

      static final int SUSPEND_THREAD
      See Also:
    • SUSPEND_ALL_THREADS

      static final int SUSPEND_ALL_THREADS
      See Also:
    • ONE_SHOT

      static final int ONE_SHOT
      See Also:
    • PREFER_HARDWARE

      static final int PREFER_HARDWARE
      If the architecture differentiates software vs hardware breakpoints, this flag can be set along with BREAK_ON_CODE to tell the debugger to favor setting a hardware breakpoint, instead of the default software breakpoint. Else, the flag has no effect.
      See Also:
    • ACCESS_SIZE_MASK

      static final int ACCESS_SIZE_MASK
      The 3-byte of the flags is used to specify a breakpoint size or memory access size in bytes, if the debugger supports it.
      See Also:
    • ACCESS_SIZE_SHIFT

      static final int ACCESS_SIZE_SHIFT
      See Also:
  • Method Details

    • getAddress

      default String getAddress()
      Get the breakpoint address relative to the debugger itself. Unlike getUnitAddress(), this method should never return null.
      Returns:
      debugger-relative breakpoint address
    • getAddress

      String getAddress(AddressForm form)
      Parameters:
      form -
      Returns:
    • getUnitAddress

      UnitAddress<ICodeUnit> getUnitAddress()
      Get the breakpoint address relative to the unit from which the breakpoint belongs, if possible. This method may return null: it is possible that a breakpoint is not located within any unit processed within a JEB project.;
      Returns:
      unit-relative breakpoint address, or null
    • getFlags

      int getFlags()
      Retrieve the optional breakpoint flags.
      Returns:
      0 (default), or a combination of BREAK_ON_xxx flags
    • setEnabled

      boolean setEnabled(boolean enabled)
      Enable or disable this breakpoint.
      Parameters:
      enabled - true to enable the breakpoint
      Returns:
      true if the operation was successful
    • isEnabled

      boolean isEnabled()
      Determine whether or not the breakpoint is currently enable.
      Returns:
      true if the breakpoint is enabled
    • getFlagsAsString

      static String getFlagsAsString(int flags)