Crate canic_memory

Crate canic_memory 

Source
Expand description

Core stable-memory utilities shared across Canic consumers.

This crate hosts the shared memory manager, eager TLS helpers, registry (ID/range reservation), and ergonomics macros (ic_memory!, ic_memory_range!, eager_static!) so external crates can coordinate stable memory without depending on the full canic stack.

Re-exports§

pub use manager::MEMORY_MANAGER;
pub use runtime::init_eager_tls;
pub use ::canic_cdk as cdk;

Modules§

macros
manager
registry
runtime
serialize
serde_cbor-powered serialization helpers ensuring deterministic codecs across canisters. Provides a thin wrapper with shared error handling for CBOR round-trips in stable structures.

Macros§

eager_init
Run $body during process start-up using ctor.
eager_static
Declare a thread-local static and schedule an eager initialization touch.
ic_memory
Declare a stable-memory slot backed by the Canic memory registry.
ic_memory_range
Reserve a contiguous block of stable-memory IDs for the current crate.
impl_storable_bounded
Implement Storable with a bounded size guarantee.
impl_storable_unbounded
Implement Storable without a size bound.

Derive Macros§

ThisError