silent/
lib.rs

1mod configs;
2#[cfg(feature = "cookie")]
3mod cookie;
4/// The `silent` library.
5mod core;
6mod error;
7pub mod extractor;
8#[cfg(feature = "grpc")]
9mod grpc;
10mod handler;
11mod log;
12pub mod middleware;
13pub mod prelude;
14#[cfg(feature = "server")]
15pub use crate::server::protocol;
16mod route;
17#[cfg(feature = "scheduler")]
18mod scheduler;
19#[cfg(feature = "security")]
20mod security;
21#[cfg(feature = "server")]
22mod server;
23#[cfg(feature = "session")]
24mod session;
25#[cfg(feature = "sse")]
26mod sse;
27#[cfg(feature = "template")]
28mod templates;
29#[cfg(feature = "upgrade")]
30pub mod ws;
31
32// use silent_multer as multer;
33#[cfg(feature = "multipart")]
34#[allow(unused_imports)]
35#[allow(clippy::single_component_path_imports)]
36use multer;
37
38pub use crate::configs::Configs;
39#[cfg(feature = "cookie")]
40pub use crate::cookie::cookie_ext::CookieExt;
41#[cfg(feature = "server")]
42pub use crate::core::remote_addr::RemoteAddr;
43#[cfg(feature = "server")]
44pub use crate::core::socket_addr::SocketAddr;
45pub use crate::core::{next::Next, request::Request, response::Response};
46#[cfg(feature = "grpc")]
47pub use crate::grpc::{GrpcHandler, GrpcRegister};
48pub use crate::middleware::{MiddleWareHandler, middlewares};
49#[cfg(feature = "server")]
50pub use crate::server::RouteConnectionService;
51#[cfg(feature = "server")]
52pub use crate::server::connection::{BoxedConnection, Connection};
53#[cfg(feature = "server")]
54pub use crate::server::listener::{AcceptFuture, Listen, Listener, Listeners, ListenersBuilder};
55#[cfg(feature = "server")]
56pub use crate::server::net_server::{NetServer, RateLimiterConfig};
57#[cfg(feature = "server")]
58pub use crate::server::protocol::Protocol;
59#[cfg(feature = "quic")]
60pub use crate::server::quic;
61#[cfg(feature = "quic")]
62pub use crate::server::quic::{HybridListener, QuicEndpointListener};
63#[cfg(all(feature = "server", feature = "tls"))]
64pub use crate::server::tls::ReloadableCertificateStore;
65#[cfg(feature = "server")]
66pub use crate::server::{BoxError, ConnectionFuture, ConnectionService, Server};
67#[cfg(all(feature = "server", feature = "tls"))]
68pub use crate::server::{CertificateStore, CertificateStoreBuilder};
69#[cfg(feature = "server")]
70pub use crate::server::{ConnectionLimits, ServerConfig};
71pub use error::SilentError;
72pub use error::SilentResult as Result;
73pub use handler::Handler;
74pub use handler::HandlerWrapper;
75pub use headers;
76pub use hyper::{Method, StatusCode, header};
77#[cfg(feature = "scheduler")]
78pub use scheduler::{ProcessTime, SCHEDULER, Scheduler, SchedulerExt, Task};