#![deny(missing_docs)]
#![deny(rustdoc::broken_intra_doc_links)]
pub use caelix_core::*;
#[cfg(any(feature = "microservices-nats", feature = "microservices-redis"))]
pub use caelix_macros::{context, event_pattern, message_pattern, microservice, payload};
pub use caelix_macros::{controller, gateway, guard, injectable, on_message};
#[cfg(any(feature = "microservices-nats", feature = "microservices-redis"))]
pub mod microservices {
pub use caelix_microservices::*;
}
#[cfg(any(feature = "microservices-nats", feature = "microservices-redis"))]
pub use caelix_microservices::*;
#[cfg(any(feature = "microservices-nats", feature = "microservices-redis"))]
#[doc(hidden)]
pub use caelix_microservices::{
__serde as __microservice_serde, __serde_json as __microservice_serde_json,
};
#[cfg(feature = "openapi")]
pub mod openapi {
pub use caelix_core::openapi::*;
pub use caelix_macros::{errors, request_header, response, security};
}
pub mod websocket {
pub use caelix_core::{
WebSocketCloseCode, WebSocketCloseFrame, WebSocketError, WebSocketGateway,
WebSocketRequest, WebSocketSession,
};
}
#[cfg(all(feature = "actix", feature = "axum"))]
compile_error!("Caelix backends `actix` and `axum` are mutually exclusive; select exactly one");
#[cfg(any(
feature = "actix",
feature = "axum",
feature = "microservices-nats",
feature = "microservices-redis"
))]
pub use caelix_macros::{main, test};
#[cfg(feature = "actix")]
#[doc(hidden)]
pub use caelix_actix::__actix_web;
#[cfg(feature = "actix")]
pub use caelix_actix::{
Application, Logging, RequestPayload, TestApplication, TestApplicationBuilder,
TestRequestBuilder, TestResponse, to_actix_response,
};
#[cfg(feature = "axum")]
#[doc(hidden)]
pub use caelix_axum::{__axum, __tokio};
#[cfg(all(
any(feature = "microservices-nats", feature = "microservices-redis"),
not(feature = "axum")
))]
#[doc(hidden)]
pub use tokio as __tokio;
#[cfg(feature = "axum")]
pub use caelix_axum::{
Application, AxumRequestInfo, AxumRouterBuilder, DEFAULT_BODY_LIMIT_BYTES, RequestPayload,
TestApplication, TestApplicationBuilder, TestRequestBuilder, TestResponse, to_axum_response,
};
#[cfg(feature = "socketio")]
pub mod socket_io {
pub use caelix_socketio::*;
}
pub mod prelude {
pub use caelix_core::*;
#[cfg(any(feature = "microservices-nats", feature = "microservices-redis"))]
pub use caelix_macros::{context, event_pattern, message_pattern, microservice, payload};
pub use caelix_macros::{controller, gateway, guard, injectable, on_message};
#[cfg(any(feature = "microservices-nats", feature = "microservices-redis"))]
pub use caelix_microservices::*;
}