Skip to main content

memlink_shm/
lib.rs

1//! Shared memory IPC system with multi-priority message queues, futex signaling,
2//! and cross-platform support (Linux, macOS, Windows). Provides daemon-client
3//! architecture with crash recovery, bounds checking, and backpressure control.
4
5pub mod platform;
6pub mod mmap;
7pub mod control;
8pub mod layout;
9pub mod buffer;
10pub mod futex;
11pub mod priority;
12pub mod pring;
13pub mod transport;
14pub mod recovery;
15pub mod safety;
16
17pub use platform::Platform;
18pub use mmap::MmapSegment;
19pub use control::ControlRegion;
20pub use layout::{
21    CONTROL_REGION_SIZE, RING_BUFFER_OFFSET, MIN_SEGMENT_SIZE,
22    DEFAULT_SEGMENT_SIZE, MAX_SEGMENT_SIZE, PAGE_SIZE,
23};
24pub use buffer::{RingBuffer, RingBufferError, SlotId, Priority as BufferPriority, MAX_SLOT_SIZE};
25pub use futex::{Futex, FutexError, FutexResult};
26pub use priority::{Priority, calculate_slot_distribution};
27pub use pring::PriorityRingBuffer;
28pub use transport::{ShmTransport, NrelayShmTransport, ShmError, ShmResult};
29pub use recovery::{RecoveryManager, Heartbeat, SlotMetadata, SlotState};
30pub use safety::{BoundsChecker, PoisonGuard, PoisonState, SafeShmAccess, BoundsError, SafeAccessError};