API Reference¶
Frozen historical mirror
This page is part of the nim-debra T0 documentation mirror (see
Provenance). The standalone debra package no longer
exists — it was consolidated into the lockfree umbrella as
lockfree/smr/nebr at the T0 merge point. Because there is no debra
package to introspect, the auto-generated API tables that once lived on
this page cannot be regenerated and have been replaced with this pointer.
For the live, supported SMR API, see:
The sections below record the public surface that the original
debra package exposed at the consolidation point. Each maps to the
current lockfree/smr/nebr module; consult the live API reference above
for the up-to-date, auto-extracted signatures.
Atomics¶
Custom atomics module with compile-time lock-free guarantees, per-op
memory-order validation, and DWCAS (16-byte / 128-bit) atomics via
Atomic[Pair[A, B]]. Now part of lockfree as
lockfree/atomics; see
guide/atomics.md for the narrative overview.
Main Module¶
DEBRA+ manager, thread registration, pin/unpin, retire, and reclamation
entry points. Now part of lockfree as
lockfree/smr/nebr.
Core Types¶
Type definitions for the DEBRA+ manager and thread state.
Constants¶
Configuration constants for the DEBRA+ algorithm.
Limbo Bags¶
Data structures for thread-local retire queues.
Signal Handling¶
POSIX signal handling for the neutralization protocol.
Typestates¶
The original debra.typestates.* modules enforced the DEBRA+ protocol at
compile time. The equivalent live typestates ship with lockfree; see the
SMR API reference.
Signal Handler¶
Signal handler installation lifecycle.
Manager¶
Manager initialization and shutdown lifecycle.
Registration¶
Thread registration lifecycle.
Thread Slot¶
Thread slot allocation and release.
Epoch Guard¶
Pin/unpin critical section lifecycle.
Retire¶
Object retirement to limbo bags.
Reclamation¶
Safe memory reclamation from limbo bags.
Neutralization¶
Thread neutralization protocol.
Epoch Advance¶
Global epoch advancement.