Skip to main content

mesh_node/
lib.rs

1// Copyright (c) Microsoft Corporation.
2// Licensed under the MIT License.
3
4//! The port and node layer that makes mesh channels process-transparent.
5//!
6//! A [`local_node::Port`] is a bidirectional, untyped message endpoint. Typed
7//! channels (`Sender<T>`, `Receiver<T>`) use ports internally when they need to
8//! cross process boundaries. Ports can be sent inside messages, allowing
9//! channel endpoints to migrate between processes.
10//!
11//! Each process has a local node that tracks its ports and connections to
12//! remote nodes. The node layer handles routing, port migration, and message
13//! ordering.
14//!
15//! Most code should use the `mesh` facade crate rather than depending on this
16//! crate directly.
17
18#![expect(missing_docs)]
19
20pub mod common;
21pub mod local_node;
22pub mod message;
23pub mod resource;