Expand description
Typed-atom transformation for haz query filter expressions.
The parser in haz_query_lang produces an Expr<RawAtom>
whose atoms are still raw text. This module lifts atoms into
the typed representations the engine consumes:
Expr<TagName>for--tags(QRY-003).Expr<ProjectName>for--projects(QRY-003).Expr<TaskName>for--tasks(QRY-003).
Each per-attribute parser is a pure RawAtom -> Result<T, AtomError> function. Combine with
haz_query_lang::expr::Expr::try_map to lift a parsed
expression in one step.
Path-pattern atoms (--inputs / --outputs) and relational
atoms (--child-of, --parent-of, --depends-on,
--ancestor-of) are handled by sibling modules.
Modulesยง
- atom
- Atom-validation errors shared across the per-attribute
lifters in
super. - identifier
- Lifters that convert raw atoms into typed identifier values.
- path
- Lifter and intersection check for path-pattern atoms.
- relational
- Relational atoms for
--child-of,--parent-of,--depends-on, and--ancestor-of. - shortcut
- Boolean shortcut flags for
haz queryperQRY-005.