1#![cfg_attr(docsrs, feature(doc_cfg))]
8
9#[cfg(test)]
12extern crate self as rust_web_server;
13
14#[allow(unused_imports)]
17#[doc(hidden)]
18pub use rws_server::{app, app_manifest, application, authz, blocklist, cache, config_reload, core, disk_guard, early_hints, entry_point, error, ext, feature, header, http, http_client, ip_filter, maintenance, mcp, metrics, middleware, range, rate_limit, request, request_log, response, rewrite, router, server, server_config, service_discovery, session, sse, state, url};
19#[cfg(feature = "auth")]
20#[doc(hidden)]
21pub use rws_server::auth;
22#[cfg(not(target_arch = "wasm32"))]
23#[doc(hidden)]
24pub use rws_server::circuit_breaker;
25#[cfg(all(any(feature = "http-client", feature = "http2"), not(target_arch = "wasm32")))]
26#[doc(hidden)]
27pub use rws_server::crypto_provider;
28#[cfg(not(target_arch = "wasm32"))]
29#[doc(hidden)]
30pub use rws_server::log;
31#[cfg(not(target_arch = "wasm32"))]
32#[doc(hidden)]
33pub use rws_server::otel;
34#[cfg(not(target_arch = "wasm32"))]
35#[doc(hidden)]
36pub use rws_server::redis_protocol;
37#[cfg(feature = "sso")]
38#[doc(hidden)]
39pub use rws_server::sso;
40#[cfg(any(feature = "model-sqlite", feature = "model-postgres", feature = "model-mysql"))]
41#[doc(hidden)]
42pub use rws_server::model;
43#[cfg(all(unix, any(feature = "http1", feature = "http2")))]
44#[doc(hidden)]
45pub use rws_server::systemd;
46#[cfg(not(target_arch = "wasm32"))]
47#[doc(hidden)]
48pub use rws_server::timeout;
49#[cfg(feature = "http2")]
50#[doc(hidden)]
51pub use rws_server::tls;
52#[cfg(all(any(feature = "http-client", feature = "http2"), not(target_arch = "wasm32")))]
53#[doc(hidden)]
54pub use rws_server::tls_client_builder;
55#[cfg(not(target_arch = "wasm32"))]
56#[doc(hidden)]
57pub use rws_server::websocket;
58#[cfg(feature = "acme")]
59#[doc(hidden)]
60pub use rws_acme::acme;
61#[cfg(feature = "storage-s3")]
62#[doc(hidden)]
63pub use rws_storage::storage;
64#[cfg(feature = "wasm-plugins")]
65#[doc(hidden)]
66pub use rws_wasm_plugin::wasm_plugin;
67
68#[cfg(not(target_arch = "wasm32"))]
69pub mod proxy;
70#[cfg(not(target_arch = "wasm32"))]
71pub mod proxy_config;
72#[cfg(not(target_arch = "wasm32"))]
73pub mod admin;
74#[cfg(not(target_arch = "wasm32"))]
76pub mod dev_mcp;
77#[cfg(not(target_arch = "wasm32"))]
80pub mod generator;
81#[cfg(not(target_arch = "wasm32"))]
83pub mod cluster;
84#[cfg(all(feature = "http2", not(target_arch = "wasm32")))]
86pub mod fleet;
87pub mod config_check;
88#[cfg(not(target_arch = "wasm32"))]
89pub mod llm;
90#[cfg(not(target_arch = "wasm32"))]
91pub mod tcp_proxy;
92#[cfg(not(target_arch = "wasm32"))]
93pub mod udp_proxy;
94#[cfg(not(target_arch = "wasm32"))]
95pub mod ws_proxy;
96#[cfg(not(target_arch = "wasm32"))]
97pub mod canary;
98#[cfg(not(target_arch = "wasm32"))]
99pub mod ingress;
100pub mod waf;
102pub mod a2a;
103#[cfg(not(target_arch = "wasm32"))]
105pub mod fastcgi;
106pub mod traffic;
107
108#[cfg(test)]
109pub(crate) mod test_env;
110#[cfg(test)]
112pub(crate) use rws_server::test_client;
113#[cfg(all(test, feature = "http2"))]
114pub(crate) use rws_server::h2_server;
115#[cfg(all(test, feature = "http3"))]
116pub(crate) use rws_server::h3_handler;