Expand description
A fully owned, syntax-oriented openCypher abstract syntax tree.
The tree describes what was written; it does not perform name resolution,
type checking, query planning, or execution. Every syntactic node carries a
half-open UTF-8 byte Span. Trivia remains available from the lossless
token stream and is not attached to AST nodes.
Structs§
- Binding
- An expression bound to a variable.
- Call
Clause - Invokes a procedure or a subquery.
- Case
Alternative - One
WHEN ... THEN ...arm. - Case
Expression - A searched or simple
CASEexpression. - Create
Clause - Creates graph elements described by a pattern.
- Delete
Clause - Deletes values or graph elements.
- Error
Node - A marker inserted where error recovery skipped malformed syntax.
- Filter
Clause - Keeps rows satisfying an expression.
- Float
Literal - A floating-point spelling preserved without rounding.
- Foreach
Clause - Applies updating clauses for each item in a list.
- Function
Invocation - A function call.
- Identifier
- An identifier and whether it was backtick escaped.
- InTransactions
- Batched transaction behavior for a subquery call.
- Insert
Clause - Inserts graph elements using GQL-aligned pattern syntax.
- Integer
Literal - An integer spelling and its radix.
- LetClause
- Introduces one or more variable bindings.
- List
Comprehension - A list comprehension.
- Load
CsvClause - Loads delimited records from a URL expression.
- MapEntry
- A map entry.
- MapProjection
- A projection derived from an existing map or graph element.
- Match
Clause - A
MATCHclause. - Merge
Action - An
ON MATCHorON CREATEaction. - Merge
Clause - Matches or creates a single pattern and applies conditional updates.
- Node
- A syntax value and its source extent.
- Node
Pattern - A node pattern
(variable:Label {properties}). - OrderBy
- Sort specifications following
ORDER BY. - Parameter
- A parameter reference without its leading
$. - Path
Pattern Kind - Ordered factors in a path pattern.
- Pattern
- A graph pattern.
- Pattern
Comprehension - A pattern comprehension.
- Pattern
Part Kind - The contents of a pattern part.
- Program
- A complete source input containing zero or one query statement.
- Projection
Clause - A projection body shared by
RETURN,WITH, and GQL-alignedSELECT. - Qualified
Name - A dot-separated name such as a procedure or function name.
- Quantified
Predicate - An
ALL,ANY,NONE, orSINGLEpredicate over a list. - Quantifier
- Repetition applied to a node, relationship, or parenthesized path.
- Query
Statement - A query statement and its optional execution prefix.
- Reduce
Expression - A left fold over a list.
- Regular
Query - A query connected by zero or more set unions.
- Relationship
Pattern - A relationship pattern between two nodes.
- Remove
Clause - A collection of removals following
REMOVE. - Return
Clause - Produces the final rows from a query.
- SetClause
- A collection of assignments following
SET. - Single
Query Kind - The contents of a single query.
- Sort
Item - One expression and its requested ordering.
- String
Literal - A decoded string value and its delimiter style.
- Subquery
Expression - A query nested inside an expression.
- Subquery
Scope - Variables imported into a
CALL { ... }subquery. - Type
RefKind - A type expression and its nullability marker.
- Union
Branch - A
UNIONoperator and the query to its right. - Unwind
Clause - Expands a list expression into rows.
- UseClause
- Selects the graph against which the following query runs.
- With
Clause - Projects intermediate values and continues a query.
- Yield
Clause - Selects values produced by a procedure call.
Enums§
- Binary
Operator - An infix operator, ordered by the grammar’s precedence rules.
- Call
Target - The target of a
CALLclause. - Clause
Kind - Any clause in an openCypher query.
- Delete
Mode - Relationship handling for a delete operation.
- Execution
Mode - A query execution prefix.
- Expr
Kind - Any expression in openCypher 2024.3.
- Integer
Radix - The radix of an integer literal.
- IsPredicate
- A predicate following
ISorIS NOT. - Label
Expression Kind - The form of a label/type boolean expression.
- Literal
Kind - A literal value as represented in source.
- MapProjection
Item Kind - The form of a map projection item.
- Match
Hint Kind - The form of a planner hint.
- Merge
Trigger - The event that triggers a merge action.
- Normalization
Form - Unicode normalization requested by an expression predicate.
- Null
Order - Placement of null values in sorted output.
- Parameter
Name - The form of a parameter name.
- Path
Factor Kind - The form of a path factor.
- Path
Mode - Restrictions on repeated elements in a path.
- Path
Selector - Selection applied to matching paths.
- Projection
Item Kind - The form of a projection item.
- Quantified
Predicate Kind - Quantification applied to a list predicate.
- Quantifier
Kind - A path repetition form. Bounds retain their original decimal spelling.
- Query
Kind - The syntactic form of a query.
- Quote
Style - Quote style used for a string literal.
- Relationship
Direction - Direction indicated by a relationship pattern’s arrows.
- Remove
Item Kind - The form of a removal.
- SetItem
Kind - The form of an assignment.
- SetQuantifier
- Duplicate handling explicitly written for a projection or function call.
- Sort
Direction - Sort direction.
- Statement
Kind - The syntactic form of a top-level statement.
- Subquery
Expression Kind - The value produced by a subquery expression.
- Transaction
Error Behavior - Error handling for
CALL { ... } IN TRANSACTIONS. - Unary
Operator - A prefix operator.
- Union
Operator - Duplicate handling for a query union.
- Value
Type - A value type named by the grammar.
Type Aliases§
- Clause
- A query clause.
- Expr
- An expression.
- Label
Expression - A label/type boolean expression.
- Literal
- A literal expression.
- MapProjection
Item - One item in a map projection.
- Match
Hint - A planner hint attached to
MATCH. - Name
- A spanned identifier.
- Path
Factor - One factor in a path pattern.
- Path
Pattern - A path pattern composed from node, relationship, and grouped factors.
- Pattern
Part - A selected path pattern and optional path-variable binding.
- Projection
Item - One expression or wildcard in a projection.
- Query
- A regular query.
- Remove
Item - A single
REMOVEoperation. - SetItem
- A single
SETassignment. - Single
Query - A sequence of query clauses evaluated from left to right.
- Statement
- A top-level statement.
- TypeRef
- A value type used by typed predicates.