Expand description
Query execution layer for the Uni graph database.
This crate provides OpenCypher query parsing, logical planning, and execution against Uni’s object-store-backed property graph.
§Modules
query— planner, executor, DataFusion integration, pushdown logictypes— public value types (Value,Node,Edge,Path, etc.)
§Quick Start
ⓘ
let executor = Executor::new(storage);
let planner = QueryPlanner::new(schema);
let plan = planner.plan(cypher_ast)?;
let result = executor.execute_plan(plan, ¶ms).await?;Re-exports§
pub use query::executor::core::OperatorStats;pub use query::executor::core::ProfileOutput;pub use query::executor::procedure::ProcedureOutput;pub use query::executor::procedure::ProcedureParam;pub use query::executor::procedure::ProcedureRegistry;pub use query::executor::procedure::ProcedureValueType;pub use query::executor::procedure::RegisteredProcedure;pub use query::executor::Executor;pub use query::executor::ResultNormalizer;pub use query::df_udfs_plugin::SESSION_PLUGIN_REGISTRY;pub use query::df_udfs_plugin::current_session_plugin_registry;pub use query::df_udfs_plugin::scoped_with_session_context;pub use query::df_udfs_plugin::scoped_with_session_plugin_registry;pub use query::planner::CostEstimates;pub use query::planner::ExplainOutput;pub use query::planner::ForkIndexLookup;pub use query::planner::FusionKind;pub use query::planner::IndexUsage;pub use query::planner::LogicalPlan;pub use query::planner::QueryPlanner;pub use query::planner::fuse_create_set;pub use query::planner::rewrite_for_fork_fusion;pub use types::ExecuteResult;pub use types::QueryCursor;pub use types::QueryMetrics;pub use types::QueryResult;pub use types::QueryWarning;pub use types::Row;
Modules§
- procedures_
plugin - Host-coupled built-in procedure plugins.
- projection_
store - Per-
StorageManagercache of materialised graph projections. - query
- Cypher query planning and execution engine.
- types
- Query result types and value re-exports.
Structs§
- Custom
Function Registry - Registry of user-defined scalar functions.
- Edge
- Graph edge with identity, type, endpoints, and properties.
- Node
- Graph node with identity, labels, and properties.
- Path
- Graph path consisting of alternating nodes and edges.
Enums§
- Cypher
Query - Time
Travel Spec - Value
- Dynamic value type for properties, parameters, and results.
Statics§
- CURRENT_
PRINCIPAL - Tokio task-local carrying the authenticated principal for the in-flight query.
Traits§
Functions§
- current_
principal - Borrow the principal active for the current execute scope, if any.
- maybe_
scope_ with_ principal - Run
futeither inside a principal task-local scope or unwrapped, depending on whether a principal was supplied. - scoped_
with_ principal - Run
futinside a scope wherecurrent_principalresolves toprincipal. - validate_
read_ only - Validate that a query AST contains only read clauses.
- validate_
read_ only_ with - Like
validate_read_only, but also rejects procedure calls thatis_write_procedureclassifies as mutating.
Type Aliases§
- Custom
Scalar Fn - Type alias for a custom scalar function.