Skip to content

Add a bytes range to the DataBreakpointInfo Request #455

@connor4312

Description

@connor4312

Splitting off from #445

One feature from the authors of the request include the ability to set breakpoints for a range of memory:

image

The "event points" map pretty well onto DAP data breakpoints, except data breakpoints can only be set for singular variables in the protocol.

To allow a range to be set, we need a corresponding capability

interface Capability {
  // ... in addition to exisitng properties:

  /**
   * The debug adapter supports padding `length` in the `DataBreakpoint` request.
   */
  supportsDataBreakpointBytes?: boolean;

Then there may be an additional field in the info request, which specifies the number of bytes following the address in which the debugger should stop:

interface DataBreakpointInfoArguments {
  // ... in addition to exisitng properties:

  /**
   * Clients may set this variable only if the `supportsDataBreakpointBytes`
   * capability is true.
   * 
   * Clients may pass this to request a reference to a range of memory rather
   * than a single variable or expression. Data breakpoints set using the
   * resulting data ID request that the debugger pauses within the range of
   * memory starting at address of the variable or expression,
   * and extending `bytes` exclusive bytes.
   * 
   * Treated as a hex value if prefixed with `0x`, or as a decimal value
   * otherwise.
   */
  bytes?: string;

Metadata

Metadata

Assignees

Labels

feature-requestRequest for new features or functionality

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions