canic_memory/
lib.rs

1//! Core stable-memory utilities shared across Canic consumers.
2//!
3//! This crate hosts the shared memory manager, eager TLS helpers, registry
4//! (ID/range reservation), and ergonomics macros (`ic_memory!`, `ic_memory_range!`,
5//! `eager_static!`) so external crates can coordinate stable memory without
6//! depending on the full `canic` stack.
7
8pub mod macros;
9pub mod manager;
10pub mod ops;
11pub mod registry;
12pub mod runtime;
13
14// export cdk
15pub use ::canic_cdk as cdk;
16
17// internal types
18pub use manager::MEMORY_MANAGER;
19pub use registry::{
20    MemoryRange, MemoryRegistry, MemoryRegistryEntry, MemoryRegistryError, MemoryRegistryView,
21    drain_pending_ranges, drain_pending_registrations,
22};
23pub use runtime::init_eager_tls;
24
25pub mod export {
26    pub use ctor;
27}