Skip to main content

subetha_pointers/
lib.rs

1//! CXC exotic pointer types.
2//!
3//! Each pointer type declares a `K_*` direction signature via
4//! [`subetha_core::AxisMask`], so CXC's MMF dispatcher can route
5//! workloads to the right pointer kind by signature containment.
6//!
7//! - [`umbra_pointer::UmbraPointer<T>`] for content-prefix
8//! - [`bloom_pointer::BloomPointer<T>`] for probabilistic set summary
9//! - [`kstep_pointer::KStepPointer<T>`] for log2-strided iteration
10//! - [`k_tower_pointer::KTower2<T>`] / [`k_tower_pointer::KTower3<T>`]
11//!   for multi-segment address space
12//! - [`self_desc_pointer::SelfDescPointer<T>`] for type discriminant
13//! - [`versioned_pointer::VersionedPointer<T>`] /
14//!   [`versioned_pointer::HlcVersionedPointer<T>`] for version metadata
15//! - [`cardinality_pointer::CardinalityPointer<T>`] for log2 cardinality
16//! - [`adaptive_cheri_pointer::ReadableCapability<T>`] /
17//!   [`adaptive_cheri_pointer::WritableCapability<T>`] for bounds-checked
18//!   pointers on capability-aware silicon (CHERI / ARM Morello)
19//! - [`adaptive_rasp_batch::RaspBatch<T>`] for SIMD-batched
20//!   bounds + permission checks on x86 (the x86 sibling to CHERI;
21//!   SoA layout + AVX2 / AVX-512F dispatch)
22//!
23//! ## Stable-Rust portable
24//!
25//! No nightly features. The pointer types are pure-Rust structs
26//! over `*const T` / `*mut T` with content metadata.
27
28pub mod adaptive_cheri_pointer;
29pub mod adaptive_rasp_batch;
30pub mod bloom_pointer;
31pub mod cardinality_pointer;
32pub mod k_tower_pointer;
33pub mod kstep_pointer;
34pub mod self_desc_pointer;
35pub mod umbra_pointer;
36pub mod versioned_pointer;