aerosocket_server/
lib.rs

1//! AeroSocket Server
2//!
3//! High-performance WebSocket server implementation with enterprise features.
4//!
5//! ## Quick Start
6//!
7//! ```rust,no_run
8//! use aerosocket_server::prelude::*;
9//!
10//! #[tokio::main]
11//! async fn main() -> aerosocket_core::Result<()> {
12//!     let server = Server::builder()
13//!         .bind("0.0.0.0:8080")?
14//!         .max_connections(10_000)
15//!         .build()?;
16//!
17//!     server.serve().await?;
18//!
19//!     Ok(())
20//! }
21//! ```
22
23#![cfg_attr(docsrs, feature(doc_cfg))]
24#![warn(rust_2018_idioms)]
25#![allow(
26    dead_code,
27    clippy::new_without_default,
28    clippy::derivable_impls,
29    clippy::redundant_closure,
30    clippy::field_reassign_with_default,
31    unused_variables,
32    unused_imports
33)]
34#![doc(html_root_url = "https://docs.rs/aerosocket-server/")]
35
36// Public modules
37pub mod config;
38pub mod connection;
39pub mod error;
40pub mod handler;
41pub mod logging;
42pub mod manager;
43pub mod rate_limit;
44pub mod server;
45pub mod tcp_transport;
46pub mod tls_transport;
47
48// Prelude module with common imports
49pub mod prelude;
50
51// Re-export key types for convenience
52pub use config::{BackpressureConfig, CompressionConfig, ServerConfig, TlsConfig};
53pub use connection::{Connection, ConnectionHandle, ConnectionMetadata, ConnectionState};
54pub use error::{
55    ConfigError, ConnectionError, ContextError, ContextResult, ErrorContext, HandlerError,
56    HandshakeError, ManagerError, ProtocolError, ServerError, TransportError,
57};
58pub use handler::{BoxedHandler, DefaultHandler, EchoHandler, Handler};
59pub use manager::{CloseReason, ConnectionHealth, ConnectionManager, ManagerStats};
60pub use server::{Server, ServerBuilder};