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"))]
84pub mod db_cli;
85#[cfg(not(target_arch = "wasm32"))]
87pub mod cluster;
88#[cfg(all(feature = "http2", not(target_arch = "wasm32")))]
90pub mod fleet;
91pub mod config_check;
92#[cfg(not(target_arch = "wasm32"))]
93pub mod llm;
94#[cfg(not(target_arch = "wasm32"))]
95pub mod tcp_proxy;
96#[cfg(not(target_arch = "wasm32"))]
97pub mod udp_proxy;
98#[cfg(not(target_arch = "wasm32"))]
99pub mod ws_proxy;
100#[cfg(not(target_arch = "wasm32"))]
101pub mod canary;
102#[cfg(not(target_arch = "wasm32"))]
103pub mod ingress;
104pub mod waf;
106pub mod a2a;
107#[cfg(not(target_arch = "wasm32"))]
109pub mod fastcgi;
110pub mod traffic;
111
112#[cfg(test)]
113pub(crate) mod test_env;
114#[cfg(test)]
116pub(crate) use rws_server::test_client;
117#[cfg(all(test, feature = "http2"))]
118pub(crate) use rws_server::h2_server;
119#[cfg(all(test, feature = "http3"))]
120pub(crate) use rws_server::h3_handler;