Expand description
Main module of this crate
Re-exports§
pub use build::InnerAttributes;
pub use grammar::Cfg;
pub use grammar::Pos;
pub use grammar::Pr;
pub use grammar::Rhs;
pub use grammar::Symbol;
pub use grammar::SymbolAttribute;
pub use grammar::Terminal;
pub use grammar::TerminalKind;
pub use analysis::calculate_lalr1_parse_table;
pub use analysis::calculate_lookahead_dfas;
pub use analysis::detect_left_recursive_non_terminals;
pub use analysis::CompiledTerminal;
pub use analysis::GrammarAnalysisError;
pub use analysis::KTuple;
pub use analysis::KTupleBuilder;
pub use analysis::KTuples;
pub use analysis::KTuplesBuilder;
pub use analysis::LR1State;
pub use analysis::LRAction;
pub use analysis::LRParseTable;
pub use analysis::LookaheadDFA;
pub use analysis::RecursiveNonTerminal;
pub use analysis::RelatedHint;
pub use conversions::render_dfa_dot_string;
pub use conversions::render_nt_dot_string;
pub use conversions::render_par_string;
pub use generators::check_and_transform_grammar;
pub use generators::generate_lalr1_parser_source;
pub use generators::generate_lexer_source;
pub use generators::generate_parser_source;
pub use generators::try_format;
pub use generators::GrammarConfig;
pub use generators::GrammarTypeInfo;
pub use generators::LanguageGenerator;
pub use generators::ScannerConfig;
pub use generators::UserTraitGenerator;
pub use parser::parse;
pub use parser::ParolGrammar;
pub use parser::ParolParserError;
pub use transformation::augment_grammar;
pub use transformation::left_factor;
pub use utils::generate_tree_layout;
pub use utils::obtain_grammar_config;
pub use utils::obtain_grammar_config_from_string;
Modules§
- Module with functionalities for grammar analysis
- Allows programmatically invoking parol from a
build.rs
script - Module with functionalities for grammar conversion
- Module with functionalities for lexer and parser generation
- Basic grammar data structures and algorithms
- Module with parol’s parser for input grammars
- Module with test template(s)
- Module with functionalities for grammar transformation
- Module with utility functionalities
Structs§
- Error reporter for user errors generated by the parol parser itself.
Constants§
- Constant lookahead limit, which is used for the calculation of the lookahead sets. The value is used to limit the number of iterations in the calculation of the lookahead sets. Grammar with a higher value will be rejected.
Traits§
- Common configuration of both parser generator an user trait generator.
- Configuration of parser generator
- Configuration of user trait generator