Skip to main content

grafeo_engine/
lib.rs

1//! # grafeo-engine
2//!
3//! The engine behind Grafeo. You'll find everything here for creating databases,
4//! running queries, and managing transactions.
5//!
6//! Most users should start with the main `grafeo` crate, which re-exports the
7//! key types. If you're here directly, [`GrafeoDB`] is your entry point.
8//!
9//! ## Modules
10//!
11//! - [`database`] - Create and manage databases with [`GrafeoDB`]
12//! - [`session`] - Lightweight handles for concurrent access
13//! - [`config`] - Tune memory, threads, and durability settings
14//! - [`transaction`] - MVCC transaction management (snapshot isolation)
15//! - [`query`] - The full query pipeline: parsing, planning, optimization, execution
16//! - [`catalog`] - Schema metadata: labels, property keys, indexes
17//! - [`admin`] - Admin API types for inspection, backup, and maintenance
18
19pub mod admin;
20pub mod catalog;
21pub mod config;
22pub mod database;
23pub mod query;
24pub mod session;
25pub mod transaction;
26
27pub use admin::{
28    CompactionStats, DatabaseInfo, DatabaseMode, DatabaseStats, DumpFormat, DumpMetadata,
29    IndexInfo, LpgSchemaInfo, RdfSchemaInfo, SchemaInfo, ValidationError, ValidationResult,
30    ValidationWarning, WalStatus,
31};
32pub use catalog::{Catalog, CatalogError, IndexDefinition, IndexType};
33pub use config::Config;
34pub use database::GrafeoDB;
35pub use session::Session;