rama_unix/unix/server/
mod.rs

1//! Unix (domain) socket server module for Rama.
2//!
3//! The Unix server is used to create a [`UnixListener`] and accept incoming connections.
4//!
5//! # Example
6//!
7//! ```no_run
8//! use rama_unix::{UnixStream, server::UnixListener};
9//! use rama_core::service::service_fn;
10//! use tokio::io::AsyncWriteExt;
11//!
12//! #[tokio::main]
13//! async fn main() {
14//!     UnixListener::bind_path("/tmp/example.socket")
15//!         .await
16//!         .expect("bind Unix Listener")
17//!         .serve(service_fn(async |mut stream: UnixStream| {
18//!             stream
19//!                 .write_all(b"Hello, Unix!")
20//!                 .await
21//!                 .expect("write to stream");
22//!             Ok::<_, std::convert::Infallible>(())
23//!         }))
24//!         .await;
25//! }
26//! ```
27
28mod listener;
29#[doc(inline)]
30pub use listener::{UnixListener, UnixListenerBuilder};