//! Typed abstract syntax tree (AST) for Cypher queries.
//!
//! This module contains all AST node types produced by the parser and the
//! internal CST→AST builder that converts the lossless rowan CST into these
//! high-level types.
//!
//! # Structure
//!
//! | Sub-module | Contents |
//! |---|---|
//! | [`query`] | Top-level query types (`Query`, `RegularQuery`, `Union`, …) |
//! | [`clause`] | Clause types (`Match`, `Return`, `With`, `Create`, …) |
//! | [`expr`] | Expression types (`Expression`, `Literal`, operators, …) |
//! | [`names`] | Identifiers (`Variable`, `SymbolicName`, `LabelName`, …) |
//! | [`pattern`] | Graph pattern types (`NodePattern`, `RelationshipPattern`, …) |
//! | [`schema`] | Schema command types (`CreateIndex`, `CreateConstraint`, …) |
//! | [`procedure`] | Procedure call types (`StandaloneCall`, `InQueryCall`, …) |
//! | [`mod@print`] | [`ToCypher`] trait for serialising AST nodes back to text |
//! | [`visit`] | [`visit::Visit`] / [`visit::VisitMut`] traits for traversal |
pub
pub use crateExpression;
pub use crateToCypher;
pub use crate;