ndn_ipc/lib.rs
1//! # ndn-ipc -- Inter-process communication transport
2//!
3//! Connects application processes to the NDN router over Unix sockets and
4//! (optionally) shared-memory ring buffers. Handles chunked transfer for
5//! large objects and service discovery via a local registry.
6//!
7//! ## Key types
8//!
9//! - [`IpcClient`] / [`IpcServer`] -- Unix-socket connection endpoints
10//! - [`ForwarderClient`] -- ergonomic client for app-to-router communication
11//! - [`MgmtClient`] -- management/control-plane client
12//! - [`ChunkedProducer`] / [`ChunkedConsumer`] -- segmented object transfer
13//! - [`ServiceRegistry`] -- local service advertisement and lookup
14//!
15//! ## Feature flags
16//!
17//! - **`spsc-shm`** (default) -- enables SPSC shared-memory ring-buffer transport
18
19#![allow(missing_docs)]
20
21pub mod blocking;
22pub mod chunked;
23pub mod client;
24pub mod forwarder_client;
25pub mod mgmt_client;
26pub mod registry;
27pub mod server;
28
29pub use blocking::BlockingForwarderClient;
30pub use chunked::{ChunkedConsumer, ChunkedProducer, NDN_DEFAULT_SEGMENT_SIZE};
31pub use client::IpcClient;
32pub use forwarder_client::{ForwarderClient, ForwarderError};
33pub use mgmt_client::MgmtClient;
34pub use registry::ServiceRegistry;
35pub use server::IpcServer;