Skip to main content

Module parser

Module parser 

Source
Expand description

RQL Parser — re-export shim.

The whole parser family — the monolithic Parser struct and every SQL/DML/DDL/expression/filter/join/CTE/graph/vector submodule, plus the embedded parser unit tests — was re-homed into the reddb-io-rql language front-end crate (#1103, ADR 0053). It now consumes the lexer and canonical AST that already live in that crate (#1102, #1113) and reaches the in-house JSON stack + parse_duration_ns through reddb-io-types (#1118), so the crate graph stays acyclic — no reddb-io-rql -> reddb-server back-edge.

This shim preserves the historical crate::storage::query::parser::* import path so every runtime, mode-detector, and sql.rs call-site across the workspace keeps resolving unchanged — a byte-faithful move with zero call-site edits.

Modules§

limits
Parser DoS limits.

Structs§

ParseError
Parse error
Parser
RQL Parser
ParserLimits
Hard limits enforced by the front-end.
SafeTokenDisplay
Display adapter that emits a Token while escaping the caller-controlled byte payload of Ident / String / JsonLiteral / Integer / Float arms.

Enums§

ParseErrorKind
Categorical kind for a parse error.

Functions§

parse
Parse an RQL query string into a QueryWithCte. A leading WITH is consumed as a CTE prelude; any other statement is returned in the QueryWithCte::simple shape (with_clause: None). Callers that don’t care about CTEs read .query to recover the legacy QueryExpr shape.