shm_primitives/
lib.rs

1#![doc = include_str!("../README.md")]
2
3pub mod region;
4pub mod slot;
5pub mod spsc;
6pub mod sync;
7pub mod treiber;
8
9pub use region::HeapRegion;
10pub use region::Region;
11pub use slot::{SlotMeta, SlotState, VarSlotMeta};
12pub use spsc::{
13    PushResult, RingFull, SpscConsumer, SpscProducer, SpscRing, SpscRingHeader, SpscRingRaw,
14};
15pub use treiber::{
16    AllocResult, FreeError, SlotError, SlotHandle, TreiberSlab, TreiberSlabHeader, TreiberSlabRaw,
17};
18
19// OS-level primitives for SHM
20#[cfg(unix)]
21mod unix;
22#[cfg(unix)]
23pub use unix::*;
24
25#[cfg(windows)]
26mod windows;
27#[cfg(windows)]
28pub use windows::*;
29
30#[cfg(all(test, loom))]
31mod loom_tests;