Skip to main content

Module memory

Module memory 

Source
Expand description

Memory classes, placement policy, and token-backed message storage.

Edges carry MessageToken handles rather than full messages. All message data lives in a MemoryManager, keyed by token. This module provides:

Submodules:

  • header_storeHeaderStore supertrait for payload-agnostic header access.
  • managerMemoryManager typed storage interface.
  • static_managerno_std/no_alloc fixed-capacity implementation.
  • heap_manager (alloc) — heap-backed fixed-capacity implementation.
  • concurrent_manager (std) — lock-free freelist + per-slot RwLock implementation.

Modules§

concurrent_manager
Concurrent heap-backed memory manager with lock-free freelist.
header_store
Read-only header access for token-backed message storage.
heap_manager
Heap-backed fixed-capacity memory manager.
manager
Typed token-backed message storage.
static_manager
Fixed-capacity, no_std, no_alloc memory manager.

Structs§

BufferDescriptor
A descriptor of a buffer/payload view for size accounting.
PlacementAcceptance
A bitfield describing which memory classes a port can accept zero-copy.

Enums§

MemoryClass
The memory class associated with a payload.
PlacementDecision
The edge-level placement decision for a message about to cross a port.

Functions§

decide_placement
Decide whether an edge can pass a message zero-copy or requires adaptation.