Skip to main content

composable_runtime/
lib.rs

1//! Modulewise Composable Runtime
2//!
3//! An inversion of control runtime for Wasm Components.
4//! Supports composition, config, and capability management.
5
6pub use composition::graph::{ComponentGraph, GraphBuilder};
7pub use composition::registry::{CapabilityStateHasData, HostCapability, HostCapabilityFactory};
8pub use config::types::{
9    CategoryClaim, Condition, ConfigHandler, DefinitionLoader, Operator, PropertyMap, Selector,
10};
11pub use runtime::{Runtime, RuntimeBuilder};
12pub use service::Service;
13pub use types::{
14    Component, ComponentInvoker, ComponentState, Function, FunctionParam, MessagePublisher,
15};
16
17// exposed for testing, hidden from docs
18#[doc(hidden)]
19pub mod composition;
20#[doc(hidden)]
21pub mod types;
22
23pub(crate) mod config;
24#[cfg(feature = "messaging")]
25mod messaging;
26mod runtime;
27pub(crate) mod service;
28
29#[cfg(feature = "messaging")]
30pub use messaging::{Channel, Message, MessageBuilder, header};