Skip to main content

Crate uni_query

Crate uni_query 

Source
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 logic
  • types — 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, &params).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::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-StorageManager cache of materialised graph projections.
query
Cypher query planning and execution engine.
types
Query result types and value re-exports.

Structs§

CustomFunctionRegistry
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§

CypherQuery
TimeTravelSpec
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§

FromValue
Trait for fallible conversion from Value.

Functions§

current_principal
Borrow the principal active for the current execute scope, if any.
maybe_scope_with_principal
Run fut either inside a principal task-local scope or unwrapped, depending on whether a principal was supplied.
scoped_with_principal
Run fut inside a scope where current_principal resolves to principal.
validate_read_only
Validate that a query AST contains only read clauses.

Type Aliases§

CustomScalarFn
Type alias for a custom scalar function.