1#![cfg_attr(docsrs, feature(doc_cfg))]
2
3extern crate self as predawn;
4
5pub mod any_map;
6pub mod app;
7pub mod config;
8#[doc(hidden)]
9pub mod controller;
10pub mod environment;
11pub mod extract;
12pub mod handler;
13mod macros;
14pub mod media_type;
15pub mod middleware;
16pub mod normalized_path;
17pub mod openapi;
18mod path_params;
19pub mod payload;
20pub mod plugin;
21pub mod response;
22pub mod response_error;
23pub mod route;
24pub mod server;
25pub mod test_client;
26mod traits;
27pub(crate) mod util;
28
29pub use http;
30pub use predawn_core::{
31 api_request, api_response, body, either, error, error_ext, from_request, into_response,
32 location,
33 media_type::{MultiRequestMediaType, MultiResponseMediaType},
34 request,
35 response::{MultiResponse, SingleResponse},
36};
37#[cfg_attr(docsrs, doc(cfg(feature = "macro")))]
38#[cfg(feature = "macro")]
39pub use predawn_macro::{
40 controller, MultiRequestMediaType, MultiResponse, MultiResponseMediaType, SecurityScheme,
41 SingleResponse, Tag, ToParameters, ToSchema,
42};
43#[cfg_attr(docsrs, doc(cfg(feature = "schemars")))]
44#[cfg(feature = "schemars")]
45pub use predawn_schema::schemars_transform;
46pub use predawn_schema::ToSchema;
47
48pub use self::traits::{SecurityScheme, Tag, ToParameters};
49
50#[doc(hidden)]
51pub mod __internal {
52 pub use indexmap;
53 pub use paste;
54 pub use rudi;
55 pub use serde_json;
56}