canic_core/api/memory.rs
1//! Module: api::memory
2//!
3//! Responsibility: public memory-query facade for endpoint callers.
4//! Does not own: memory accounting, stable-memory layout, or ledger updates.
5//! Boundary: maps memory workflow errors into public API errors.
6
7use crate::{
8 dto::{error::Error, memory::MemoryLedgerResponse},
9 workflow::memory::query::MemoryQuery as MemoryQueryWorkflow,
10};
11
12///
13/// MemoryQuery
14///
15/// Thin endpoint-facing facade for memory ledger queries.
16///
17
18pub struct MemoryQuery;
19
20impl MemoryQuery {
21 /// Return the current memory ledger snapshot.
22 pub fn ledger() -> Result<MemoryLedgerResponse, Error> {
23 MemoryQueryWorkflow::ledger().map_err(Error::from)
24 }
25}