//! Hamelin facade crate
//!
//! This crate provides a unified entry point for the Hamelin ecosystem.
//! Use feature flags to enable specific components:
//!
//! - `trino`: Trino backend support
//! - `duckdb`: DuckDB backend support
//! - `error_rendering`: Enhanced error rendering with source context

// Re-export the core library
pub use hamelin_lib as lib;

// Re-export the compiler and its associated types from hamelin_legacy
pub use hamelin_legacy::{
    Compiler, ContextualResult, DMLTranslation, FunctionDescription, QueryTranslation,
    StatementTranslation, TimeRange, Translation,
};

#[cfg(feature = "trino")]
pub use hamelin_trino as trino;

#[cfg(feature = "duckdb")]
pub use hamelin_duckdb as duckdb;

#[cfg(any(feature = "trino", feature = "duckdb"))]
pub use hamelin_executor as executor;
