Module query

Module query 

Source
Expand description

Query processing pipeline.

Stages: parse → alt_kinds → symbol_table → recursion → shapes → [qis → build_graph]. Each stage populates its own diagnostics. Use is_valid() to check if any stage produced errors.

The build_graph stage is optional and constructs the transition graph for compilation to binary IR. QIS detection runs as part of this stage.

Re-exports§

pub use graph::BuildEffect;
pub use graph::BuildGraph;
pub use graph::BuildMatcher;
pub use graph::BuildNode;
pub use graph::Fragment;
pub use graph::NodeId;
pub use graph::RefMarker;
pub use infer::InferredMember;
pub use infer::InferredTypeDef;
pub use infer::TypeDescription;
pub use infer::TypeInferenceResult;
pub use infer::UnificationError;
pub use symbol_table::UNNAMED_DEF;

Modules§

alt_kinds
Semantic validation for the typed AST.
graph
Core types for build-time query graphs.
infer
AST-based type inference for Plotnik queries.
link
Link pass: resolve node types and fields against tree-sitter grammar.
recursion
Escape path analysis for recursive definitions.
shapes
Shape cardinality analysis for query expressions.
symbol_table
Symbol table: name resolution and reference checking.

Structs§

OptimizeStats
Statistics from epsilon elimination.
QisTrigger
A parsed and analyzed query.
Query
QueryPrinter