Breakpoints

final class ntoseye.Breakpoints

Code breakpoints and data watchpoints, keyed by id (dbg.breakpoints).

__contains__(id: int, /) → bool
__getitem__(id: int, /) → Breakpoint

Look up a breakpoint id, raising KeyError when it is absent.

__iter__() → BreakpointIterator

Iterate a fresh snapshot of breakpoint handles.

__len__() → int

Number of live breakpoints.

add(target: int | str, condition: str | None = None, *, hardware: bool = False, when: Callable[[Stop], object] | None = None, pass_count: int = 0, one_shot: bool = False, process: Process | int | None = None, thread: Thread | int | None = None, processor: Cpu | int | None = None, action: str | None = None) → Breakpoint

Add a code breakpoint at an address or symbolic spec.

hardware=True arms a debug-register execute breakpoint instead of patching code: the target resolves to an address once, now, and the site does not re-resolve after a module reload or reboot. It is the only kind the secure kernel (VTL1) accepts, e.g. add(dbg.secure_kernel.symbols["securekernel!Func"], hardware=True).

add_pattern(pattern: str, condition: str | None = None, *, when: Callable[[Stop], object] | None = None, pass_count: int = 0, one_shot: bool = False, process: Process | int | None = None, thread: Thread | int | None = None, processor: Cpu | int | None = None, action: str | None = None, limit: int = 256) → list[Breakpoint]

Add symbol-identity breakpoints for matching glob names (bm).

add_source(file: str, line: int, condition: str | None = None, *, when: Callable[[Stop], object] | None = None, pass_count: int = 0, one_shot: bool = False, process: Process | int | None = None, thread: Thread | int | None = None, processor: Cpu | int | None = None, action: str | None = None) → list[Breakpoint]

Add source breakpoints for every address matching file:line.

get(id: int) → Breakpoint | None

Look up a breakpoint id, returning None when it is absent.

watch(target: int | str, *, access: Literal['write', 'read_write'] = ..., length: int = 1, condition: str | None = None, when: Callable[[Stop], object] | None = None, pass_count: int = 0, one_shot: bool = False, process: Process | int | None = None, thread: Thread | int | None = None, processor: Cpu | int | None = None, action: str | None = None) → Watchpoint

Add a hardware data watchpoint.