Skip to main content

Module ddl_ast

Module ddl_ast 

Source
Expand description

Typed AST for NodeDB-specific DDL statements.

Every DDL command the system supports is represented as a variant of NodedbStatement. The DDL router matches on this enum instead of string prefixes, so the compiler catches missing handlers when a new DDL is added.

The parser ([parse]) converts raw SQL into a NodedbStatement using whitespace-split token matching — the same technique the old string-prefix router used, but producing a typed output.

Re-exports§

pub use alter_ops::AlterCollectionOp;
pub use alter_ops::AlterRoleOp;
pub use alter_ops::AlterUserOp;
pub use alter_ops::ConflictPolicyKind;
pub use alter_ops::ConstraintKindKeyword;
pub use collection_type::build_collection_type;
pub use graph_parse::FusionParams;
pub use graph_parse::parse_search_using_fusion;
pub use graph_types::GraphDirection;
pub use graph_types::GraphProperties;
pub use parse::parse;
pub use statement::AlterDatabaseOperation;
pub use statement::AlterTenantOperation;
pub use statement::AuthStmt;
pub use statement::AutomationStmt;
pub use statement::CloneAsOf;
pub use statement::ClusterStmt;
pub use statement::CollectionStmt;
pub use statement::DatabaseStmt;
pub use statement::GraphStmt;
pub use statement::MiscStmt;
pub use statement::NodedbStatement;
pub use statement::OidcClaimMappingClause;
pub use statement::PolicyStmt;
pub use statement::StreamViewStmt;
pub use statement::TenantSelector;

Modules§

alter_ops
Typed sub-operations for ALTER COLLECTION, ALTER USER, and ALTER ROLE.
collection_type
Engine-name → CollectionType mapping for CREATE COLLECTION / CREATE TABLE DDL.
graph_parse
Typed parsing for the graph DSL (GRAPH ..., MATCH ...).
graph_types
Graph DSL types used in NodedbStatement graph variants.
parse
statement
DDL statement AST — re-export surface.

Structs§

QuotaSpec
Partial quota update from SET QUOTA (...) DDL.

Enums§

MirrorMode
Replication mode for a mirror database.
MirrorStatus
Lifecycle status of a mirror database.