Skip to main content

grafeo_core/
lib.rs

1//! # grafeo-core
2//!
3//! The core data structures behind Grafeo. You'll find graph storage, indexes,
4//! and the execution engine here.
5//!
6//! Most users don't need this crate directly - use `grafeo` or `grafeo-engine`
7//! instead. But if you're building algorithms or need low-level access, this
8//! is where the action is.
9//!
10//! ## Modules
11//!
12//! - [`cache`] - Caching utilities: second-chance LRU
13//! - [`graph`] - Graph storage: LPG (labeled property graph) and RDF triple stores
14//! - [`index`] - Fast lookups: hash, B-tree, adjacency lists, tries
15//! - [`execution`] - Query execution: data chunks, vectors, operators
16//! - [`statistics`] - Cardinality estimates for the query optimizer
17//! - [`storage`] - Compression: dictionary encoding, bit-packing, delta encoding
18
19#![deny(unsafe_code)]
20
21pub mod cache;
22pub mod execution;
23pub mod graph;
24pub mod index;
25pub mod statistics;
26pub mod storage;
27pub mod testing;
28
29// Re-export the types you'll use most often
30pub use graph::lpg::{Edge, LpgStore, Node};
31pub use index::adjacency::ChunkedAdjacency;
32pub use statistics::{ColumnStatistics, Histogram, LabelStatistics, Statistics};
33pub use storage::{DictionaryBuilder, DictionaryEncoding};