parol 4.5.0

LL(k) and LALR(1) parser generator for Rust
Documentation
use crate::config::{CommonGeneratorConfig, UserTraitGeneratorConfig};
use crate::generators::{GrammarConfig, GrammarTypeInfo};
use crate::parser::GrammarType;

pub(crate) struct UserTraitGenerationIR<'a, C>
where
    C: CommonGeneratorConfig + UserTraitGeneratorConfig,
{
    pub(crate) grammar_config: &'a GrammarConfig,
    pub(crate) config: &'a C,
    pub(crate) grammar_type: GrammarType,
    pub(crate) type_info: &'a mut GrammarTypeInfo,
}

impl<'a, C> UserTraitGenerationIR<'a, C>
where
    C: CommonGeneratorConfig + UserTraitGeneratorConfig,
{
    pub(crate) fn new(
        grammar_config: &'a GrammarConfig,
        config: &'a C,
        grammar_type: GrammarType,
        type_info: &'a mut GrammarTypeInfo,
    ) -> Self {
        Self {
            grammar_config,
            config,
            grammar_type,
            type_info,
        }
    }
}