sipha_parse/
lib.rs

1//! Parsing engine for sipha.
2//!
3//! This crate provides:
4//! - `Parser` struct and parsing logic
5//! - `GrammarRule` definitions and evaluation
6//! - `ParserState` and state management
7//! - `GrammarRuleParser` trait
8//! - Helper functions for building grammars
9
10pub mod grammar;
11pub mod helpers;
12pub mod parser;
13pub mod pratt;
14pub mod state;
15
16/// Prelude module containing commonly used types.
17pub mod prelude {
18    pub use crate::{
19        grammar::{GrammarRule, GrammarRuleBuilder, GrammarRuleParser, Precedence},
20        helpers::{choice, many, many1, opt, rule, seq, token},
21        parser::Parser,
22        pratt::PrattParser,
23        state::{NodeBuilder, ParserState},
24    };
25}
26
27pub use crate::{
28    grammar::{GrammarRule, GrammarRuleBuilder, GrammarRuleParser, Precedence},
29    helpers::{choice, many, many1, opt, rule, seq, token},
30    parser::Parser,
31    pratt::PrattParser,
32    state::{NodeBuilder, ParserState},
33};