canic_core/memory/mod.rs
1//! Module: memory
2//!
3//! Responsibility: adapt Canic stable-memory declarations to `ic-memory` bootstrap.
4//! Does not own: stable data schemas, ops storage APIs, or lifecycle orchestration.
5//! Boundary: lifecycle initializes this before stable structures are accessed.
6
7pub(crate) mod ledger;
8mod manager;
9mod policy;
10pub mod registry;
11pub mod runtime;
12
13pub use crate::{eager_init, eager_static, ic_memory_key, ic_memory_range};
14
15pub(crate) fn bootstrap_default_memory_manager() -> Result<
16 ic_memory::ValidatedAllocations,
17 ic_memory::RuntimeBootstrapError<registry::MemoryRegistryError>,
18> {
19 ic_memory::bootstrap_default_memory_manager_with_policy(&policy::CanicMemoryManagerPolicy::new())
20}