1#![allow(missing_docs)]
8#![allow(clippy::missing_safety_doc)]
9#![warn(rustdoc::missing_crate_level_docs)]
10
11pub mod arena;
12pub mod caller;
13pub mod context;
14pub mod dispatch;
15pub mod error;
16pub mod exports;
17pub mod log;
18pub mod macros;
19pub mod metrics;
20pub mod panic;
21pub mod r#ref;
22pub mod request;
23pub mod serialize;
24
25pub use arena::Arena;
26pub use caller::ModuleCaller;
27pub use context::CallContext;
28pub use error::{ModuleError, Result};
29pub use macros::{memlink_export, memlink_module};
30pub use r#ref::ArenaRef;
31
32pub mod prelude {
33 pub use crate::arena::Arena;
34 pub use crate::caller::{ModuleCaller, MAX_CALL_DEPTH};
35 pub use crate::context::CallContext;
36 pub use crate::dispatch::{dispatch, dispatch_with_context, register_method};
37 pub use crate::error::{ModuleError, Result};
38 pub use crate::log::{debug, error, info, log, Level};
39 pub use crate::macros::{memlink_export, memlink_module};
40 pub use crate::metrics::{increment_counter, observe_histogram, record_metric, set_gauge, MetricValue};
41 pub use crate::panic::catch_module_panic;
42 pub use crate::r#ref::ArenaRef;
43 pub use crate::serialize::{default_serializer, MessagePackSerializer, Serializer};
44 pub use memlink_protocol::{Request, Response, StatusCode};
45}