Skip to main content

uqa_graph/cypher/
mod.rs

1//
2// Unified Query Algebra
3//
4// Copyright (c) 2023-2026 Cognica, Inc.
5//
6
7//! openCypher subset: lexer, AST, recursive-descent parser. The
8//! compiler that lowers AST onto graph operators lives in a separate
9//! slice; this module is the front-end only.
10
11pub mod ast;
12pub mod executor;
13pub mod lexer;
14pub mod parser;
15pub mod writer;
16
17pub use ast::{
18    BinaryOp, CaseExpr, CreateClause, CypherClause, CypherExpr, CypherQuery, DeleteClause,
19    FunctionCall, InList, IsNotNull, IsNull, ListComprehension, ListIndex, ListLiteral, ListSlice,
20    Literal, MapLiteral, MatchClause, MergeClause, NodePattern, OrderByItem, Parameter,
21    PathElement, PathPattern, PropertyAccess, RelDirection, RelPattern, ReturnClause, ReturnItem,
22    SetClause, SetItem, SetOperator, UnaryOp, UnwindClause, Variable, WithClause,
23};
24pub use executor::{Binding, BindingRow, CypherError, CypherExecutor, ResultRow};
25pub use lexer::{tokenize, LexError, Token, TokenKind};
26pub use parser::{parse_cypher, ParseError};
27pub use writer::CypherWriter;