Skip to main content

xpath_eval/
lib.rs

1//! A pure-Rust XPath 1.0 expression parser and evaluator, generic over the
2//! document model.
3//!
4//! Phase 02: lexer + recursive-descent parser producing a structured AST.
5//! Phase 03: the generic document/node data model and the 13 XPath axes.
6//! Phase 04: the value model, type conversions, operators, and full
7//! location-path/predicate evaluation — see `plan/` for the roadmap.
8
9mod ast;
10mod axes;
11mod document;
12mod eval;
13mod functions;
14mod lexer;
15mod parser;
16mod value;
17
18pub use ast::*;
19pub use axes::{
20    ancestor, ancestor_or_self, attribute, child, descendant, descendant_or_self, following,
21    following_sibling, namespace, parent, preceding, preceding_sibling, self_axis,
22};
23pub use document::{Document, ExpandedName, Node, NodeKind};
24pub use eval::{EvalError, EvaluationContext, evaluate};
25pub use parser::{ParseError, parse};
26pub use value::Value;