#![cfg_attr(not(feature = "full"), allow(dead_code, unused_imports, unused_mut))]
#[cfg(not(any(
feature = "lang-c",
feature = "lang-rust",
feature = "lang-fortran",
feature = "lang-python",
feature = "lang-typescript",
feature = "lang-go",
feature = "lang-java",
feature = "lang-cpp",
feature = "lang-javascript",
feature = "lang-ruby",
feature = "lang-haskell",
feature = "lang-ocaml",
feature = "lang-scala",
feature = "lang-php",
feature = "lang-csharp",
feature = "lang-bash",
feature = "lang-html",
feature = "lang-css",
feature = "lang-json",
feature = "lang-regex",
feature = "lang-verilog",
feature = "lsp",
)))]
compile_error!(
"CodeNexus requires at least one `lang-*` or `lsp` feature enabled. \
Use `--features lang-rust` (or any lang-* variant), `--features lsp`, \
or a preset like `--features minimal`/`core`/`full`."
);
#[cfg(feature = "cache")]
pub mod cache;
#[cfg(feature = "daemon")]
pub mod daemon;
pub mod discover;
pub mod index;
pub mod ir;
pub mod kit;
pub mod model;
pub mod parse;
pub mod query;
pub mod resolve;
pub mod service;
pub mod storage;
pub mod trace;
pub use service::error::CodeNexusError;
#[cfg(feature = "analysis")]
pub mod analysis;
#[cfg(feature = "embed")]
pub mod embed;
#[cfg(feature = "lsp")]
pub mod lsp;
#[cfg(test)]
mod test_log_capture;
#[must_use]
pub fn version() -> &'static str {
env!("CARGO_PKG_VERSION")
}
#[cfg(test)]
mod tests {
use super::version;
#[test]
fn version_is_non_empty() {
assert!(!version().is_empty());
}
}