Files
unshell/src/lib.rs
T

29 lines
912 B
Rust
Raw Normal View History

2026-04-24 13:37:30 -06:00
//! # UnShell Core
2026-04-24 12:32:24 -06:00
//!
2026-04-24 13:37:30 -06:00
//! This crate implements the UnShell protocol as a pure, `no_std` library.
2026-04-25 11:57:37 -06:00
//! It provides routed endpoint communication using an explicit tree topology.
2026-04-24 12:32:24 -06:00
//!
2026-04-24 13:37:30 -06:00
//! ## Architecture
2026-04-24 12:32:24 -06:00
//!
2026-04-25 11:57:37 -06:00
//! - [`protocol`] - Wire types, framing, stateless validation, and routing/runtime.
2026-04-24 12:32:24 -06:00
//!
2026-04-24 13:37:30 -06:00
//! The library requires `alloc` for path and payload management.
#![no_std]
2026-03-17 16:40:05 -06:00
2026-04-25 14:41:00 -06:00
pub extern crate alloc;
// Re-export derive macros against a stable `::unshell` path, including when the
// macros are used inside this crate's own examples and tests.
#[allow(unused_extern_crates)]
extern crate self as unshell;
2025-11-09 12:34:52 -07:00
pub mod logger;
/// Re-export the protocol crate behind the historical `unshell::protocol` path so
/// proc-macro output and downstream code do not need a second migration.
pub use unshell_protocol as protocol;
2026-04-25 17:42:39 -06:00
pub use unshell_macros::{Leaf, Procedure, procedures};
2026-04-25 14:41:00 -06:00
2026-04-24 13:37:30 -06:00
// pub use ush_obfuscate as obfuscate;