#![deny(missing_docs)]
#[cfg(all(
feature = "embedding-fastembed",
feature = "embedding-fastembed-dynamic-linking"
))]
compile_error!(
"embedding-fastembed and embedding-fastembed-dynamic-linking are mutually exclusive \
(static vs dynamic ONNX Runtime linking). Enabling both triggers Cargo feature \
unification that silently disables the static link path (#50/#55). Enable exactly one."
);
#[cfg(all(
any(
feature = "client-async",
feature = "discovery-async",
feature = "elastic"
),
not(any(feature = "rustls-aws-lc-rs", feature = "rustls-ring"))
))]
compile_error!(
"client-async / discovery-async / elastic require a TLS provider feature: \
enable `rustls-aws-lc-rs` (default; aws-lc-rs needs a C toolchain) or \
`rustls-ring` (pure Rust, cross-compiles without cmake/nasm). \
With default-features = false you must add one of them explicitly."
);
#[cfg(all(feature = "rustls-ring", feature = "rustls-aws-lc-rs"))]
compile_error!("rustls-ring and rustls-aws-lc-rs are mutually exclusive; enable exactly one.");
pub(crate) mod tls;
pub mod error;
#[cfg(feature = "provider")]
pub mod provider;
#[cfg(feature = "discovery")]
pub mod discovery;
#[cfg(feature = "secrets")]
pub mod secrets;
#[cfg(feature = "client-async")]
pub mod llm;
#[cfg(feature = "store")]
pub mod store;
#[cfg(feature = "config")]
pub mod config;
#[cfg(feature = "graph")]
pub mod graph;
#[cfg(feature = "mcp")]
pub mod mcp;
#[cfg(feature = "tokens")]
pub mod tokens;
#[cfg(feature = "install")]
pub mod install;
#[cfg(feature = "search")]
pub mod search;
#[cfg(any(feature = "embedding", feature = "embedding-openai"))]
pub mod embedding;
#[cfg(feature = "telemetry")]
pub mod telemetry;
#[cfg(feature = "safety")]
pub mod safety;
pub mod prelude;
pub fn name() -> &'static str {
"llm-kernel"
}
pub fn version() -> &'static str {
env!("CARGO_PKG_VERSION")
}