Skip to main content

mongreldb_kit/
lib.rs

1//! Storage-backed MongrelDB Kit crate.
2//!
3//! This crate wraps MongrelDB core with the kit schema model, transaction
4//! semantics, query execution, and migration runner.
5
6pub mod arrow_util;
7pub mod db;
8pub mod error;
9pub(crate) mod internal;
10pub mod migrate;
11pub mod pushdown;
12pub mod query;
13#[cfg(feature = "remote")]
14pub mod remote;
15pub mod schema;
16pub mod tsv;
17pub mod txn;
18
19pub use db::{
20    ApproxAggKind, ApproxAggregate, Database, ExplainPlan, IncrementalAggKind,
21    IncrementalAggregate, SimilarRow,
22};
23// Re-export the engine tuning/config types so kit consumers (and the Python
24// binding, which depends only on this crate) can reach them without a direct
25// `mongreldb-core` dependency.
26pub use error::{KitError, Result};
27pub use migrate::migrate;
28pub use mongreldb_core::auth::{Permission, RoleEntry, UserEntry};
29pub use mongreldb_core::cache::CacheStats;
30pub use mongreldb_core::{IndexBuildPolicy, TriggerConfig};
31pub use query::JoinRow;
32#[cfg(feature = "remote")]
33pub use remote::{RemoteBatch, RemoteDatabase, RemoteOpResult, RemoteQueryRow, RemoteTransaction};
34pub use schema::Row;
35pub use txn::Transaction;
36
37// Re-export the core model so downstream consumers can depend on a single crate.
38pub use mongreldb_kit_core::*;