1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
//! This crate provides an acceptor implementing `roa_core::Accept` and an app extension. //! //! ### TcpIncoming //! //! ``` //! use roa_core::{App, Context, Result}; //! use roa_tcp::TcpIncoming; //! use std::io; //! //! async fn end(_ctx: &mut Context<()>) -> Result { //! Ok(()) //! } //! //! # fn main() -> io::Result<()> { //! let app = App::new(()).end(end); //! let incoming = TcpIncoming::bind("127.0.0.1:0")?; //! let server = app.accept(incoming); //! // server.await //! Ok(()) //! # } //! ``` //! //! ### Listener //! //! ``` //! use roa_core::{App, Context, Result}; //! use roa_tcp::Listener; //! use std::io; //! //! async fn end(_ctx: &mut Context<()>) -> Result { //! Ok(()) //! } //! //! # fn main() -> io::Result<()> { //! let app = App::new(()).end(end); //! let (addr, server) = app.bind("127.0.0.1:0")?; //! // server.await //! Ok(()) //! # } //! ``` #![warn(missing_docs)] mod incoming; mod listen; #[doc(inline)] pub use incoming::TcpIncoming; #[doc(inline)] pub use listen::Listener;