mesh/
lib.rs

1// Copyright (c) Microsoft Corporation.
2// Licensed under the MIT License.
3
4//! Mesh IPC implementation based on channels.
5//!
6//! This crate provides cross-process message-based communication over channels.
7
8#![expect(missing_docs)]
9#![forbid(unsafe_code)]
10
11#[allow(unused_extern_crates)]
12extern crate self as mesh;
13
14pub mod payload {
15    pub use mesh_derive::MeshProtobuf as Protobuf;
16    pub use mesh_protobuf::*;
17}
18
19pub use mesh_channel::ChannelError;
20pub use mesh_channel::ChannelErrorKind;
21pub use mesh_channel::OneshotReceiver;
22pub use mesh_channel::OneshotSender;
23pub use mesh_channel::Receiver;
24pub use mesh_channel::RecvError;
25pub use mesh_channel::Sender;
26pub use mesh_channel::TryRecvError;
27pub use mesh_channel::cancel::Cancel;
28pub use mesh_channel::cancel::CancelContext;
29pub use mesh_channel::cancel::CancelReason;
30pub use mesh_channel::cancel::Cancelled;
31pub use mesh_channel::cancel::Deadline;
32pub use mesh_channel::cell::Cell;
33pub use mesh_channel::cell::CellUpdater;
34pub use mesh_channel::cell::cell;
35pub use mesh_channel::channel;
36pub use mesh_channel::error;
37pub use mesh_channel::mpsc_channel;
38pub use mesh_channel::oneshot;
39pub use mesh_channel::pipe;
40pub use mesh_channel::rpc;
41pub use mesh_derive::MeshPayload;
42pub use mesh_node::common::Address;
43pub use mesh_node::common::NodeId;
44pub use mesh_node::common::PortId;
45pub use mesh_node::common::Uuid;
46pub use mesh_node::local_node;
47pub use mesh_node::message;
48pub use mesh_node::message::MeshPayload;
49pub use mesh_node::message::Message;
50pub use mesh_node::message::OwnedMessage;
51pub use mesh_node::resource;