#![allow(clippy::too_many_arguments)]
#![allow(clippy::enum_variant_names)]
#![allow(clippy::large_enum_variant)]
#![allow(clippy::upper_case_acronyms)]
use parol_runtime::log::trace;
#[allow(unused_imports)]
use parol_runtime::parol_macros::{pop_and_reverse_item, pop_item};
use parol_runtime::parser::{ParseTreeType, UserActionsTrait};
use parol_runtime::{ParserError, Result, Token};
pub trait YangGrammarTrait<'t> {
fn l_brace(&mut self, _arg: &LBrace<'t>) -> Result<()> {
Ok(())
}
fn esc_n(&mut self, _arg: &EscN<'t>) -> Result<()> {
Ok(())
}
fn esc_t(&mut self, _arg: &EscT<'t>) -> Result<()> {
Ok(())
}
fn kw_module(&mut self, _arg: &KwModule<'t>) -> Result<()> {
Ok(())
}
fn kw_submodule(&mut self, _arg: &KwSubmodule<'t>) -> Result<()> {
Ok(())
}
fn kw_rpc(&mut self, _arg: &KwRpc<'t>) -> Result<()> {
Ok(())
}
fn kw_extension(&mut self, _arg: &KwExtension<'t>) -> Result<()> {
Ok(())
}
fn kw_argument(&mut self, _arg: &KwArgument<'t>) -> Result<()> {
Ok(())
}
fn kw_feature(&mut self, _arg: &KwFeature<'t>) -> Result<()> {
Ok(())
}
fn kw_typedef(&mut self, _arg: &KwTypedef<'t>) -> Result<()> {
Ok(())
}
fn kw_grouping(&mut self, _arg: &KwGrouping<'t>) -> Result<()> {
Ok(())
}
fn kw_identity(&mut self, _arg: &KwIdentity<'t>) -> Result<()> {
Ok(())
}
fn kw_anyxml(&mut self, _arg: &KwAnyxml<'t>) -> Result<()> {
Ok(())
}
fn kw_anydata(&mut self, _arg: &KwAnydata<'t>) -> Result<()> {
Ok(())
}
fn kw_case(&mut self, _arg: &KwCase<'t>) -> Result<()> {
Ok(())
}
fn kw_container(&mut self, _arg: &KwContainer<'t>) -> Result<()> {
Ok(())
}
fn kw_action(&mut self, _arg: &KwAction<'t>) -> Result<()> {
Ok(())
}
fn kw_notification(&mut self, _arg: &KwNotification<'t>) -> Result<()> {
Ok(())
}
fn kw_leaf_list(&mut self, _arg: &KwLeafList<'t>) -> Result<()> {
Ok(())
}
fn kw_leaf(&mut self, _arg: &KwLeaf<'t>) -> Result<()> {
Ok(())
}
fn kw_list(&mut self, _arg: &KwList<'t>) -> Result<()> {
Ok(())
}
fn kw_bit(&mut self, _arg: &KwBit<'t>) -> Result<()> {
Ok(())
}
fn kw_import(&mut self, _arg: &KwImport<'t>) -> Result<()> {
Ok(())
}
fn kw_include(&mut self, _arg: &KwInclude<'t>) -> Result<()> {
Ok(())
}
fn kw_prefix(&mut self, _arg: &KwPrefix<'t>) -> Result<()> {
Ok(())
}
fn kw_belongs_to(&mut self, _arg: &KwBelongsTo<'t>) -> Result<()> {
Ok(())
}
fn kw_base(&mut self, _arg: &KwBase<'t>) -> Result<()> {
Ok(())
}
fn kw_choice(&mut self, _arg: &KwChoice<'t>) -> Result<()> {
Ok(())
}
fn kw_uses(&mut self, _arg: &KwUses<'t>) -> Result<()> {
Ok(())
}
fn kw_type(&mut self, _arg: &KwType<'t>) -> Result<()> {
Ok(())
}
fn kw_refine(&mut self, _arg: &KwRefine<'t>) -> Result<()> {
Ok(())
}
fn kw_key(&mut self, _arg: &KwKey<'t>) -> Result<()> {
Ok(())
}
fn kw_deviation(&mut self, _arg: &KwDeviation<'t>) -> Result<()> {
Ok(())
}
fn kw_yang_version(&mut self, _arg: &KwYangVersion<'t>) -> Result<()> {
Ok(())
}
fn kw_status(&mut self, _arg: &KwStatus<'t>) -> Result<()> {
Ok(())
}
fn kw_if_feature(&mut self, _arg: &KwIfFeature<'t>) -> Result<()> {
Ok(())
}
fn kw_mandatory(&mut self, _arg: &KwMandatory<'t>) -> Result<()> {
Ok(())
}
fn kw_config(&mut self, _arg: &KwConfig<'t>) -> Result<()> {
Ok(())
}
fn kw_require_instance(&mut self, _arg: &KwRequireInstance<'t>) -> Result<()> {
Ok(())
}
fn kw_ordered_by(&mut self, _arg: &KwOrderedBy<'t>) -> Result<()> {
Ok(())
}
fn kw_default(&mut self, _arg: &KwDefault<'t>) -> Result<()> {
Ok(())
}
fn kw_fraction_digits(&mut self, _arg: &KwFractionDigits<'t>) -> Result<()> {
Ok(())
}
fn kw_length(&mut self, _arg: &KwLength<'t>) -> Result<()> {
Ok(())
}
fn kw_range(&mut self, _arg: &KwRange<'t>) -> Result<()> {
Ok(())
}
fn kw_value(&mut self, _arg: &KwValue<'t>) -> Result<()> {
Ok(())
}
fn kw_position(&mut self, _arg: &KwPosition<'t>) -> Result<()> {
Ok(())
}
fn kw_enum(&mut self, _arg: &KwEnum<'t>) -> Result<()> {
Ok(())
}
fn kw_revision(&mut self, _arg: &KwRevision<'t>) -> Result<()> {
Ok(())
}
fn kw_revision_date(&mut self, _arg: &KwRevisionDate<'t>) -> Result<()> {
Ok(())
}
fn kw_namespace(&mut self, _arg: &KwNamespace<'t>) -> Result<()> {
Ok(())
}
fn yang(&mut self, _arg: &Yang<'t>) -> Result<()> {
Ok(())
}
fn module_stmt(&mut self, _arg: &ModuleStmt<'t>) -> Result<()> {
Ok(())
}
fn submodule_stmt(&mut self, _arg: &SubmoduleStmt<'t>) -> Result<()> {
Ok(())
}
fn module_header_stmts(&mut self, _arg: &ModuleHeaderStmts<'t>) -> Result<()> {
Ok(())
}
fn submodule_header_stmts(&mut self, _arg: &SubmoduleHeaderStmts<'t>) -> Result<()> {
Ok(())
}
fn meta_stmts(&mut self, _arg: &MetaStmts<'t>) -> Result<()> {
Ok(())
}
fn linkage_stmts(&mut self, _arg: &LinkageStmts<'t>) -> Result<()> {
Ok(())
}
fn body_stmts(&mut self, _arg: &BodyStmts<'t>) -> Result<()> {
Ok(())
}
fn data_def_stmt(&mut self, _arg: &DataDefStmt<'t>) -> Result<()> {
Ok(())
}
fn yang_version_stmt(&mut self, _arg: &YangVersionStmt<'t>) -> Result<()> {
Ok(())
}
fn yang_version_arg_str(&mut self, _arg: &YangVersionArgStr<'t>) -> Result<()> {
Ok(())
}
fn deviation_stmt(&mut self, _arg: &DeviationStmt<'t>) -> Result<()> {
Ok(())
}
fn rpc_stmt(&mut self, _arg: &RpcStmt<'t>) -> Result<()> {
Ok(())
}
fn extension_stmt(&mut self, _arg: &ExtensionStmt<'t>) -> Result<()> {
Ok(())
}
fn argument_stmt(&mut self, _arg: &ArgumentStmt<'t>) -> Result<()> {
Ok(())
}
fn feature_stmt(&mut self, _arg: &FeatureStmt<'t>) -> Result<()> {
Ok(())
}
fn typedef_stmt(&mut self, _arg: &TypedefStmt<'t>) -> Result<()> {
Ok(())
}
fn augment_stmt(&mut self, _arg: &AugmentStmt<'t>) -> Result<()> {
Ok(())
}
fn augment_arg_str(&mut self, _arg: &AugmentArgStr<'t>) -> Result<()> {
Ok(())
}
fn when_stmt(&mut self, _arg: &WhenStmt<'t>) -> Result<()> {
Ok(())
}
fn grouping_stmt(&mut self, _arg: &GroupingStmt<'t>) -> Result<()> {
Ok(())
}
fn identity_stmt(&mut self, _arg: &IdentityStmt<'t>) -> Result<()> {
Ok(())
}
fn base_stmt(&mut self, _arg: &BaseStmt<'t>) -> Result<()> {
Ok(())
}
fn anyxml_stmt(&mut self, _arg: &AnyxmlStmt<'t>) -> Result<()> {
Ok(())
}
fn choice_stmt(&mut self, _arg: &ChoiceStmt<'t>) -> Result<()> {
Ok(())
}
fn short_case_stmt(&mut self, _arg: &ShortCaseStmt<'t>) -> Result<()> {
Ok(())
}
fn anydata_stmt(&mut self, _arg: &AnydataStmt<'t>) -> Result<()> {
Ok(())
}
fn case_stmt(&mut self, _arg: &CaseStmt<'t>) -> Result<()> {
Ok(())
}
fn status_stmt(&mut self, _arg: &StatusStmt<'t>) -> Result<()> {
Ok(())
}
fn status_arg_str(&mut self, _arg: &StatusArgStr<'t>) -> Result<()> {
Ok(())
}
fn status_arg(&mut self, _arg: &StatusArg<'t>) -> Result<()> {
Ok(())
}
fn container_stmt(&mut self, _arg: &ContainerStmt<'t>) -> Result<()> {
Ok(())
}
fn action_stmt(&mut self, _arg: &ActionStmt<'t>) -> Result<()> {
Ok(())
}
fn input_stmt(&mut self, _arg: &InputStmt<'t>) -> Result<()> {
Ok(())
}
fn output_stmt(&mut self, _arg: &OutputStmt<'t>) -> Result<()> {
Ok(())
}
fn notification_stmt(&mut self, _arg: &NotificationStmt<'t>) -> Result<()> {
Ok(())
}
fn if_feature_stmt(&mut self, _arg: &IfFeatureStmt<'t>) -> Result<()> {
Ok(())
}
fn if_feature_expr_str(&mut self, _arg: &IfFeatureExprStr<'t>) -> Result<()> {
Ok(())
}
fn if_feature_expr(&mut self, _arg: &IfFeatureExpr<'t>) -> Result<()> {
Ok(())
}
fn if_feature_term(&mut self, _arg: &IfFeatureTerm<'t>) -> Result<()> {
Ok(())
}
fn if_feature_factor(&mut self, _arg: &IfFeatureFactor<'t>) -> Result<()> {
Ok(())
}
fn presence_stmt(&mut self, _arg: &PresenceStmt<'t>) -> Result<()> {
Ok(())
}
fn uses_stmt(&mut self, _arg: &UsesStmt<'t>) -> Result<()> {
Ok(())
}
fn refine_stmt(&mut self, _arg: &RefineStmt<'t>) -> Result<()> {
Ok(())
}
fn refine_arg_str(&mut self, _arg: &RefineArgStr<'t>) -> Result<()> {
Ok(())
}
fn refine_arg(&mut self, _arg: &RefineArg<'t>) -> Result<()> {
Ok(())
}
fn descendant_schema_nodeid(&mut self, _arg: &DescendantSchemaNodeid<'t>) -> Result<()> {
Ok(())
}
fn unknown_stmt(&mut self, _arg: &UnknownStmt<'t>) -> Result<()> {
Ok(())
}
fn leaf_list_stmt(&mut self, _arg: &LeafListStmt<'t>) -> Result<()> {
Ok(())
}
fn leaf_stmt(&mut self, _arg: &LeafStmt<'t>) -> Result<()> {
Ok(())
}
fn must_stmt(&mut self, _arg: &MustStmt<'t>) -> Result<()> {
Ok(())
}
fn error_message(&mut self, _arg: &ErrorMessage<'t>) -> Result<()> {
Ok(())
}
fn units_stmt(&mut self, _arg: &UnitsStmt<'t>) -> Result<()> {
Ok(())
}
fn config_stmt(&mut self, _arg: &ConfigStmt<'t>) -> Result<()> {
Ok(())
}
fn mandatory_stmt(&mut self, _arg: &MandatoryStmt<'t>) -> Result<()> {
Ok(())
}
fn mandatory_arg_str(&mut self, _arg: &MandatoryArgStr<'t>) -> Result<()> {
Ok(())
}
fn mandatory_arg(&mut self, _arg: &MandatoryArg<'t>) -> Result<()> {
Ok(())
}
fn list_stmt(&mut self, _arg: &ListStmt<'t>) -> Result<()> {
Ok(())
}
fn ordered_by_stmt(&mut self, _arg: &OrderedByStmt<'t>) -> Result<()> {
Ok(())
}
fn ordered_by_arg_str(&mut self, _arg: &OrderedByArgStr<'t>) -> Result<()> {
Ok(())
}
fn ordered_by_arg(&mut self, _arg: &OrderedByArg<'t>) -> Result<()> {
Ok(())
}
fn default_stmt(&mut self, _arg: &DefaultStmt<'t>) -> Result<()> {
Ok(())
}
fn max_elements_stmt(&mut self, _arg: &MaxElementsStmt<'t>) -> Result<()> {
Ok(())
}
fn min_elements_stmt(&mut self, _arg: &MinElementsStmt<'t>) -> Result<()> {
Ok(())
}
fn type_stmt(&mut self, _arg: &TypeStmt<'t>) -> Result<()> {
Ok(())
}
fn fraction_digits_stmt(&mut self, _arg: &FractionDigitsStmt<'t>) -> Result<()> {
Ok(())
}
fn fraction_digits_arg(&mut self, _arg: &FractionDigitsArg<'t>) -> Result<()> {
Ok(())
}
fn bit_stmt(&mut self, _arg: &BitStmt<'t>) -> Result<()> {
Ok(())
}
fn position_stmt(&mut self, _arg: &PositionStmt<'t>) -> Result<()> {
Ok(())
}
fn leafref_specification(&mut self, _arg: &LeafrefSpecification<'t>) -> Result<()> {
Ok(())
}
fn require_instance_stmt(&mut self, _arg: &RequireInstanceStmt<'t>) -> Result<()> {
Ok(())
}
fn require_instance_arg_str(&mut self, _arg: &RequireInstanceArgStr<'t>) -> Result<()> {
Ok(())
}
fn path_stmt(&mut self, _arg: &PathStmt<'t>) -> Result<()> {
Ok(())
}
fn string_restrictions(&mut self, _arg: &StringRestrictions<'t>) -> Result<()> {
Ok(())
}
fn pattern_stmt(&mut self, _arg: &PatternStmt<'t>) -> Result<()> {
Ok(())
}
fn length_stmt(&mut self, _arg: &LengthStmt<'t>) -> Result<()> {
Ok(())
}
fn enum_stmt(&mut self, _arg: &EnumStmt<'t>) -> Result<()> {
Ok(())
}
fn value_stmt(&mut self, _arg: &ValueStmt<'t>) -> Result<()> {
Ok(())
}
fn integer_value_str(&mut self, _arg: &IntegerValueStr<'t>) -> Result<()> {
Ok(())
}
fn integer_value(&mut self, _arg: &IntegerValue<'t>) -> Result<()> {
Ok(())
}
fn enum_arg_str(&mut self, _arg: &EnumArgStr<'t>) -> Result<()> {
Ok(())
}
fn range_stmt(&mut self, _arg: &RangeStmt<'t>) -> Result<()> {
Ok(())
}
fn range_arg_str(&mut self, _arg: &RangeArgStr<'t>) -> Result<()> {
Ok(())
}
fn range_arg(&mut self, _arg: &RangeArg<'t>) -> Result<()> {
Ok(())
}
fn range_part(&mut self, _arg: &RangePart<'t>) -> Result<()> {
Ok(())
}
fn range_boundary(&mut self, _arg: &RangeBoundary<'t>) -> Result<()> {
Ok(())
}
fn identifier_ref_arg_str(&mut self, _arg: &IdentifierRefArgStr<'t>) -> Result<()> {
Ok(())
}
fn identifier_ref(&mut self, _arg: &IdentifierRef<'t>) -> Result<()> {
Ok(())
}
fn key_stmt(&mut self, _arg: &KeyStmt<'t>) -> Result<()> {
Ok(())
}
fn key_arg_str(&mut self, _arg: &KeyArgStr<'t>) -> Result<()> {
Ok(())
}
fn semicolon(&mut self, _arg: &Semicolon<'t>) -> Result<()> {
Ok(())
}
fn key_arg(&mut self, _arg: &KeyArg<'t>) -> Result<()> {
Ok(())
}
fn absolute_schema_nodeid(&mut self, _arg: &AbsoluteSchemaNodeid<'t>) -> Result<()> {
Ok(())
}
fn import_stmt(&mut self, _arg: &ImportStmt<'t>) -> Result<()> {
Ok(())
}
fn include_stmt(&mut self, _arg: &IncludeStmt<'t>) -> Result<()> {
Ok(())
}
fn revision_date_stmt(&mut self, _arg: &RevisionDateStmt<'t>) -> Result<()> {
Ok(())
}
fn namespace_stmt(&mut self, _arg: &NamespaceStmt<'t>) -> Result<()> {
Ok(())
}
fn uri_str(&mut self, _arg: &UriStr<'t>) -> Result<()> {
Ok(())
}
fn uri_arg(&mut self, _arg: &UriArg<'t>) -> Result<()> {
Ok(())
}
fn prefix_stmt(&mut self, _arg: &PrefixStmt<'t>) -> Result<()> {
Ok(())
}
fn belongs_to_stmt(&mut self, _arg: &BelongsToStmt<'t>) -> Result<()> {
Ok(())
}
fn organization_stmt(&mut self, _arg: &OrganizationStmt<'t>) -> Result<()> {
Ok(())
}
fn contact_stmt(&mut self, _arg: &ContactStmt<'t>) -> Result<()> {
Ok(())
}
fn description_stmt(&mut self, _arg: &DescriptionStmt<'t>) -> Result<()> {
Ok(())
}
fn reference_stmt(&mut self, _arg: &ReferenceStmt<'t>) -> Result<()> {
Ok(())
}
fn revision_stmt(&mut self, _arg: &RevisionStmt<'t>) -> Result<()> {
Ok(())
}
fn date_arg_str(&mut self, _arg: &DateArgStr<'t>) -> Result<()> {
Ok(())
}
fn date_arg(&mut self, _arg: &DateArg<'t>) -> Result<()> {
Ok(())
}
fn ystring(&mut self, _arg: &Ystring<'t>) -> Result<()> {
Ok(())
}
fn basic_string(&mut self, _arg: &BasicString<'t>) -> Result<()> {
Ok(())
}
fn double_quotation(&mut self, _arg: &DoubleQuotation<'t>) -> Result<()> {
Ok(())
}
fn d_q_string(&mut self, _arg: &DQString<'t>) -> Result<()> {
Ok(())
}
fn d_q_char(&mut self, _arg: &DQChar<'t>) -> Result<()> {
Ok(())
}
fn d_q_unescaped(&mut self, _arg: &DQUnescaped<'t>) -> Result<()> {
Ok(())
}
fn d_q_escaped(&mut self, _arg: &DQEscaped<'t>) -> Result<()> {
Ok(())
}
fn d_q_escape_seq_char(&mut self, _arg: &DQEscapeSeqChar<'t>) -> Result<()> {
Ok(())
}
fn escape(&mut self, _arg: &Escape<'t>) -> Result<()> {
Ok(())
}
fn non_ascii(&mut self, _arg: &NonAscii<'t>) -> Result<()> {
Ok(())
}
fn d_q_no_escape(&mut self, _arg: &DQNoEscape<'t>) -> Result<()> {
Ok(())
}
fn s_q_string(&mut self, _arg: &SQString<'t>) -> Result<()> {
Ok(())
}
fn s_q_char(&mut self, _arg: &SQChar<'t>) -> Result<()> {
Ok(())
}
fn s_q_escaped(&mut self, _arg: &SQEscaped<'t>) -> Result<()> {
Ok(())
}
fn s_q_escape_seq_char(&mut self, _arg: &SQEscapeSeqChar<'t>) -> Result<()> {
Ok(())
}
fn s_q_unescaped(&mut self, _arg: &SQUnescaped<'t>) -> Result<()> {
Ok(())
}
fn s_q_no_escape(&mut self, _arg: &SQNoEscape<'t>) -> Result<()> {
Ok(())
}
fn single_quotation(&mut self, _arg: &SingleQuotation<'t>) -> Result<()> {
Ok(())
}
fn identifier_arg_str(&mut self, _arg: &IdentifierArgStr<'t>) -> Result<()> {
Ok(())
}
fn identifier(&mut self, _arg: &Identifier<'t>) -> Result<()> {
Ok(())
}
fn ascii_no_semicolon(&mut self, _arg: &AsciiNoSemicolon<'t>) -> Result<()> {
Ok(())
}
fn ascii_no_brace(&mut self, _arg: &AsciiNoBrace<'t>) -> Result<()> {
Ok(())
}
fn yang_version_arg(&mut self, _arg: &YangVersionArg<'t>) -> Result<()> {
Ok(())
}
fn on_comment(&mut self, _token: Token<'t>) {}
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct YangModuleStmt<'t> {
pub module_stmt: Box<ModuleStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct YangSubmoduleStmt<'t> {
pub submodule_stmt: Box<SubmoduleStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ModuleHeaderStmtsYangVersionStmt<'t> {
pub yang_version_stmt: Box<YangVersionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ModuleHeaderStmtsNamespaceStmt<'t> {
pub namespace_stmt: Box<NamespaceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ModuleHeaderStmtsPrefixStmt<'t> {
pub prefix_stmt: Box<PrefixStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SubmoduleHeaderStmtsYangVersionStmt<'t> {
pub yang_version_stmt: Box<YangVersionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SubmoduleHeaderStmtsBelongsToStmt<'t> {
pub belongs_to_stmt: Box<BelongsToStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MetaStmtsOrganizationStmt<'t> {
pub organization_stmt: Box<OrganizationStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MetaStmtsContactStmt<'t> {
pub contact_stmt: Box<ContactStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MetaStmtsDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MetaStmtsReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LinkageStmtsImportStmt<'t> {
pub import_stmt: Box<ImportStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LinkageStmtsIncludeStmt<'t> {
pub include_stmt: Box<IncludeStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BodyStmtsExtensionStmt<'t> {
pub extension_stmt: Box<ExtensionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BodyStmtsFeatureStmt<'t> {
pub feature_stmt: Box<FeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BodyStmtsIdentityStmt<'t> {
pub identity_stmt: Box<IdentityStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BodyStmtsTypedefStmt<'t> {
pub typedef_stmt: Box<TypedefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BodyStmtsGroupingStmt<'t> {
pub grouping_stmt: Box<GroupingStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BodyStmtsDataDefStmt<'t> {
pub data_def_stmt: Box<DataDefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BodyStmtsAugmentStmt<'t> {
pub augment_stmt: Box<AugmentStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BodyStmtsRpcStmt<'t> {
pub rpc_stmt: Box<RpcStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BodyStmtsNotificationStmt<'t> {
pub notification_stmt: Box<NotificationStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BodyStmtsDeviationStmt<'t> {
pub deviation_stmt: Box<DeviationStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BodyStmtsUnknownStmt<'t> {
pub unknown_stmt: Box<UnknownStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DataDefStmtContainerStmt<'t> {
pub container_stmt: Box<ContainerStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DataDefStmtLeafStmt<'t> {
pub leaf_stmt: Box<LeafStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DataDefStmtLeafListStmt<'t> {
pub leaf_list_stmt: Box<LeafListStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DataDefStmtListStmt<'t> {
pub list_stmt: Box<ListStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DataDefStmtChoiceStmt<'t> {
pub choice_stmt: Box<ChoiceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DataDefStmtAnydataStmt<'t> {
pub anydata_stmt: Box<AnydataStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DataDefStmtAnyxmlStmt<'t> {
pub anyxml_stmt: Box<AnyxmlStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DataDefStmtUsesStmt<'t> {
pub uses_stmt: Box<UsesStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct YangVersionArgStrYangVersionArg<'t> {
pub yang_version_arg: Box<YangVersionArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct YangVersionArgStrDoubleQuotationYangVersionArgDoubleQuotation<'t> {
pub yang_version_arg: Box<YangVersionArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RpcStmtSuffixSemicolon<'t> {
pub semicolon: Box<Semicolon<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RpcStmtSuffixLBraceRpcStmtListRBrace<'t> {
pub rpc_stmt_list: Vec<RpcStmtList<'t>>,
pub r_brace: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RpcStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RpcStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RpcStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RpcStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RpcStmtListGroupTypedefStmt<'t> {
pub typedef_stmt: Box<TypedefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RpcStmtListGroupGroupingStmt<'t> {
pub grouping_stmt: Box<GroupingStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RpcStmtListGroupInputStmt<'t> {
pub input_stmt: Box<InputStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RpcStmtListGroupOutputStmt<'t> {
pub output_stmt: Box<OutputStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ExtensionStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ExtensionStmtSuffixLBraceExtensionStmtListRBrace<'t> {
pub extension_stmt_list: Vec<ExtensionStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ExtensionStmtListGroupArgumentStmt<'t> {
pub argument_stmt: Box<ArgumentStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ExtensionStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ExtensionStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ExtensionStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct FeatureStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct FeatureStmtSuffixLBraceFeatureStmtListRBrace<'t> {
pub feature_stmt_list: Vec<FeatureStmtList<'t>>,
pub r_brace: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct FeatureStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct FeatureStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct FeatureStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct FeatureStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypedefStmtListGroupTypeStmt<'t> {
pub type_stmt: Box<TypeStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypedefStmtListGroupUnitsStmt<'t> {
pub units_stmt: Box<UnitsStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypedefStmtListGroupDefaultStmt<'t> {
pub default_stmt: Box<DefaultStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypedefStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypedefStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypedefStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AugmentStmtListGroupWhenStmt<'t> {
pub when_stmt: Box<WhenStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AugmentStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AugmentStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AugmentStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AugmentStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AugmentStmtListGroupDataDefStmt<'t> {
pub data_def_stmt: Box<DataDefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AugmentStmtListGroupCaseStmt<'t> {
pub case_stmt: Box<CaseStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AugmentStmtListGroupActionStmt<'t> {
pub action_stmt: Box<ActionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AugmentStmtListGroupNotificationStmt<'t> {
pub notification_stmt: Box<NotificationStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct WhenStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct WhenStmtSuffixLBraceWhenStmtListRBrace<'t> {
pub when_stmt_list: Vec<WhenStmtList<'t>>,
pub r_brace: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct WhenStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct WhenStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct GroupingStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct GroupingStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct GroupingStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct GroupingStmtListGroupTypedefStmt<'t> {
pub typedef_stmt: Box<TypedefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct GroupingStmtListGroupGroupingStmt<'t> {
pub grouping_stmt: Box<GroupingStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct GroupingStmtListGroupDataDefStmt<'t> {
pub data_def_stmt: Box<DataDefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct GroupingStmtListGroupActionStmt<'t> {
pub action_stmt: Box<ActionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct GroupingStmtListGroupNotificationStmt<'t> {
pub notification_stmt: Box<NotificationStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct GroupingStmtListGroupUnknownStmt<'t> {
pub unknown_stmt: Box<UnknownStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IdentityStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IdentityStmtListGroupBaseStmt<'t> {
pub base_stmt: Box<BaseStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IdentityStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IdentityStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnyxmlStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnyxmlStmtSuffixLBraceAnyxmlStmtListRBrace<'t> {
pub anyxml_stmt_list: Vec<AnyxmlStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnyxmlStmtListGroupWhenStmt<'t> {
pub when_stmt: Box<WhenStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnyxmlStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnyxmlStmtListGroupMustStmt<'t> {
pub must_stmt: Box<MustStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnyxmlStmtListGroupConfigStmt<'t> {
pub config_stmt: Box<ConfigStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnyxmlStmtListGroupMandatoryStmt<'t> {
pub mandatory_stmt: Box<MandatoryStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnyxmlStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnyxmlStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnyxmlStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtSuffixLBraceChoiceStmtListRBrace<'t> {
pub choice_stmt_list: Vec<ChoiceStmtList<'t>>,
pub r_brace: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtListGroupWhenStmt<'t> {
pub when_stmt: Box<WhenStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtListGroupDefaultStmt<'t> {
pub default_stmt: Box<DefaultStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtListGroupConfigStmt<'t> {
pub config_stmt: Box<ConfigStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtListGroupMandatoryStmt<'t> {
pub mandatory_stmt: Box<MandatoryStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtListGroupShortCaseStmt<'t> {
pub short_case_stmt: Box<ShortCaseStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtListGroupCaseStmt<'t> {
pub case_stmt: Box<CaseStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ShortCaseStmtChoiceStmt<'t> {
pub choice_stmt: Box<ChoiceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ShortCaseStmtContainerStmt<'t> {
pub container_stmt: Box<ContainerStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ShortCaseStmtLeafStmt<'t> {
pub leaf_stmt: Box<LeafStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ShortCaseStmtLeafListStmt<'t> {
pub leaf_list_stmt: Box<LeafListStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ShortCaseStmtListStmt<'t> {
pub list_stmt: Box<ListStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ShortCaseStmtAnydataStmt<'t> {
pub anydata_stmt: Box<AnydataStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ShortCaseStmtAnyxmlStmt<'t> {
pub anyxml_stmt: Box<AnyxmlStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnydataStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnydataStmtSuffixLBraceAnydataStmtListRBrace<'t> {
pub anydata_stmt_list: Vec<AnydataStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnydataStmtListGroupWhenStmt<'t> {
pub when_stmt: Box<WhenStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnydataStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnydataStmtListGroupMustStmt<'t> {
pub must_stmt: Box<MustStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnydataStmtListGroupConfigStmt<'t> {
pub config_stmt: Box<ConfigStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnydataStmtListGroupMandatoryStmt<'t> {
pub mandatory_stmt: Box<MandatoryStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnydataStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnydataStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnydataStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct CaseStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct CaseStmtSuffixLBraceCaseStmtListRBrace<'t> {
pub case_stmt_list: Vec<CaseStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct CaseStmtListGroupWhenStmt<'t> {
pub when_stmt: Box<WhenStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct CaseStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct CaseStmtListGroupDataDefStmt<'t> {
pub data_def_stmt: Box<DataDefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct CaseStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct CaseStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct StatusArgStrStatusArg<'t> {
pub status_arg: Box<StatusArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct StatusArgStrDoubleQuotationStatusArgDoubleQuotation<'t> {
pub status_arg: Box<StatusArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtSuffixLBraceContainerStmtListRBrace<'t> {
pub container_stmt_list: Vec<ContainerStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtListGroupWhenStmt<'t> {
pub when_stmt: Box<WhenStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtListGroupMustStmt<'t> {
pub must_stmt: Box<MustStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtListGroupPresenceStmt<'t> {
pub presence_stmt: Box<PresenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtListGroupConfigStmt<'t> {
pub config_stmt: Box<ConfigStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtListGroupDataDefStmt<'t> {
pub data_def_stmt: Box<DataDefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtListGroupActionStmt<'t> {
pub action_stmt: Box<ActionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtListGroupNotificationStmt<'t> {
pub notification_stmt: Box<NotificationStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtListGroupUnknownStmt<'t> {
pub unknown_stmt: Box<UnknownStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ActionStmtSuffixSemicolon<'t> {
pub semicolon: Box<Semicolon<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ActionStmtSuffixLBraceActionStmtListRBrace<'t> {
pub action_stmt_list: Vec<ActionStmtList<'t>>,
pub r_brace: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ActionStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ActionStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ActionStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ActionStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ActionStmtListGroupInputStmt<'t> {
pub input_stmt: Box<InputStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ActionStmtListGroupOutputStmt<'t> {
pub output_stmt: Box<OutputStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct NotificationStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct NotificationStmtListGroupMustStmt<'t> {
pub must_stmt: Box<MustStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct NotificationStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct NotificationStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct NotificationStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct NotificationStmtListGroupTypedefStmt<'t> {
pub typedef_stmt: Box<TypedefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct NotificationStmtListGroupGroupingStmt<'t> {
pub grouping_stmt: Box<GroupingStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct NotificationStmtListGroupDataDefStmt<'t> {
pub data_def_stmt: Box<DataDefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IfFeatureFactorNotIfFeatureFactor<'t> {
pub not: Token<'t>,
pub if_feature_factor: Box<IfFeatureFactor<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IfFeatureFactorLParenIfFeatureExprRParen<'t> {
pub l_paren: Token<'t>,
pub if_feature_expr: Box<IfFeatureExpr<'t>>,
pub r_paren: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IfFeatureFactorIdentifier<'t> {
pub identifier: Box<Identifier<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IfFeatureFactorDoubleQuotationIdentifierDoubleQuotation<'t> {
pub double_quotation: Token<'t>,
pub identifier: Box<Identifier<'t>>,
pub double_quotation0: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UsesStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UsesStmtSuffixLBraceUsesStmtListRBrace<'t> {
pub uses_stmt_list: Vec<UsesStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UsesStmtListGroupWhenStmt<'t> {
pub when_stmt: Box<WhenStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UsesStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UsesStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UsesStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UsesStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UsesStmtListGroupRefineStmt<'t> {
pub refine_stmt: Box<RefineStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UsesStmtListGroupAugmentStmt<'t> {
pub augment_stmt: Box<AugmentStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtSuffixLBraceRefineStmtListRBrace<'t> {
pub refine_stmt_list: Vec<RefineStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtListGroupMustStmt<'t> {
pub must_stmt: Box<MustStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtListGroupPresenceStmt<'t> {
pub presence_stmt: Box<PresenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtListGroupDefaultStmt<'t> {
pub default_stmt: Box<DefaultStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtListGroupConfigStmt<'t> {
pub config_stmt: Box<ConfigStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtListGroupMandatoryStmt<'t> {
pub mandatory_stmt: Box<MandatoryStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtListGroupMinElementsStmt<'t> {
pub min_elements_stmt: Box<MinElementsStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtListGroupMaxElementsStmt<'t> {
pub max_elements_stmt: Box<MaxElementsStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineArgStrRefineArg<'t> {
pub refine_arg: Box<RefineArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineArgStrDoubleQuotationRefineArgDoubleQuotation<'t> {
pub double_quotation: Token<'t>,
pub refine_arg: Box<RefineArg<'t>>,
pub double_quotation0: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DescendantSchemaNodeidIdentifierRef<'t> {
pub identifier_ref: Box<IdentifierRef<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DescendantSchemaNodeidAbsoluteSchemaNodeid<'t> {
pub absolute_schema_nodeid: Box<AbsoluteSchemaNodeid<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UnknownStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UnknownStmtSuffixLBraceUnknownStmtListRBrace<'t> {
pub unknown_stmt_list: Vec<UnknownStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UnknownStmtListGroupTypeStmt<'t> {
pub type_stmt: Box<TypeStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UnknownStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupWhenStmt<'t> {
pub when_stmt: Box<WhenStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupTypeStmt<'t> {
pub type_stmt: Box<TypeStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupUnitsStmt<'t> {
pub units_stmt: Box<UnitsStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupMustStmt<'t> {
pub must_stmt: Box<MustStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupDefaultStmt<'t> {
pub default_stmt: Box<DefaultStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupConfigStmt<'t> {
pub config_stmt: Box<ConfigStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupMinElementsStmt<'t> {
pub min_elements_stmt: Box<MinElementsStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupMaxElementsStmt<'t> {
pub max_elements_stmt: Box<MaxElementsStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupOrderedByStmt<'t> {
pub ordered_by_stmt: Box<OrderedByStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtListGroupUnknownStmt<'t> {
pub unknown_stmt: Box<UnknownStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtListGroupWhenStmt<'t> {
pub when_stmt: Box<WhenStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtListGroupTypeStmt<'t> {
pub type_stmt: Box<TypeStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtListGroupUnitsStmt<'t> {
pub units_stmt: Box<UnitsStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtListGroupMustStmt<'t> {
pub must_stmt: Box<MustStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtListGroupDefaultStmt<'t> {
pub default_stmt: Box<DefaultStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtListGroupConfigStmt<'t> {
pub config_stmt: Box<ConfigStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtListGroupMandatoryStmt<'t> {
pub mandatory_stmt: Box<MandatoryStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtListGroupUnknownStmt<'t> {
pub unknown_stmt: Box<UnknownStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MustStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MustStmtSuffixLBraceMustStmtListRBrace<'t> {
pub must_stmt_list: Vec<MustStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MustStmtListGroupErrorMessage<'t> {
pub error_message: Box<ErrorMessage<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MustStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MandatoryArgStrMandatoryArg<'t> {
pub mandatory_arg: Box<MandatoryArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MandatoryArgStrDoubleQuotationMandatoryArgDoubleQuotation<'t> {
pub double_quotation: Token<'t>,
pub mandatory_arg: Box<MandatoryArg<'t>>,
pub double_quotation0: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupWhenStmt<'t> {
pub when_stmt: Box<WhenStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupMustStmt<'t> {
pub must_stmt: Box<MustStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupKeyStmt<'t> {
pub key_stmt: Box<KeyStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupConfigStmt<'t> {
pub config_stmt: Box<ConfigStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupMinElementsStmt<'t> {
pub min_elements_stmt: Box<MinElementsStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupMaxElementsStmt<'t> {
pub max_elements_stmt: Box<MaxElementsStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupOrderedByStmt<'t> {
pub ordered_by_stmt: Box<OrderedByStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupStatusStmt<'t> {
pub status_stmt: Box<StatusStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupDataDefStmt<'t> {
pub data_def_stmt: Box<DataDefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupActionStmt<'t> {
pub action_stmt: Box<ActionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupNotificationStmt<'t> {
pub notification_stmt: Box<NotificationStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtListGroupUnknownStmt<'t> {
pub unknown_stmt: Box<UnknownStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct OrderedByArgStrOrderedByArg<'t> {
pub ordered_by_arg: Box<OrderedByArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct OrderedByArgStrDoubleQuotationOrderedByArgDoubleQuotation<'t> {
pub double_quotation: Token<'t>,
pub ordered_by_arg: Box<OrderedByArg<'t>>,
pub double_quotation0: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DefaultStmtSuffixAsciiNoSemicolonSemicolon<'t> {
pub ascii_no_semicolon: Box<AsciiNoSemicolon<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DefaultStmtSuffixDoubleQuotationAsciiNoSemicolonDoubleQuotationSemicolon<'t> {
pub double_quotation: Token<'t>,
pub ascii_no_semicolon: Box<AsciiNoSemicolon<'t>>,
pub double_quotation0: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypeStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypeStmtSuffixLBraceTypeStmtListRBrace<'t> {
pub type_stmt_list: Vec<TypeStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypeStmtListGroupFractionDigitsStmt<'t> {
pub fraction_digits_stmt: Box<FractionDigitsStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypeStmtListGroupEnumStmt<'t> {
pub enum_stmt: Box<EnumStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypeStmtListGroupBaseStmt<'t> {
pub base_stmt: Box<BaseStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypeStmtListGroupLeafrefSpecification<'t> {
pub leafref_specification: Box<LeafrefSpecification<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypeStmtListGroupStringRestrictions<'t> {
pub string_restrictions: Box<StringRestrictions<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypeStmtListGroupRangeStmt<'t> {
pub range_stmt: Box<RangeStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypeStmtListGroupBitStmt<'t> {
pub bit_stmt: Box<BitStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypeStmtListGroupTypeStmt<'t> {
pub type_stmt: Box<TypeStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BitStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BitStmtSuffixLBraceBitStmtListRBrace<'t> {
pub bit_stmt_list: Vec<BitStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BitStmtListGroupPositionStmt<'t> {
pub position_stmt: Box<PositionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BitStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BitStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafrefSpecificationPathStmt<'t> {
pub path_stmt: Box<PathStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafrefSpecificationRequireInstanceStmt<'t> {
pub require_instance_stmt: Box<RequireInstanceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RequireInstanceArgStrMandatoryArg<'t> {
pub mandatory_arg: Box<MandatoryArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RequireInstanceArgStrDoubleQuotationMandatoryArgDoubleQuotation<'t> {
pub double_quotation: Token<'t>,
pub mandatory_arg: Box<MandatoryArg<'t>>,
pub double_quotation0: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct StringRestrictionsLengthStmt<'t> {
pub length_stmt: Box<LengthStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct StringRestrictionsPatternStmt<'t> {
pub pattern_stmt: Box<PatternStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct EnumStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct EnumStmtSuffixLBraceEnumStmtListRBrace<'t> {
pub enum_stmt_list: Vec<EnumStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct EnumStmtListGroupIfFeatureStmt<'t> {
pub if_feature_stmt: Box<IfFeatureStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct EnumStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct EnumStmtListGroupValueStmt<'t> {
pub value_stmt: Box<ValueStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct EnumStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IntegerValueStrIntegerValue<'t> {
pub integer_value: Box<IntegerValue<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IntegerValueStrDoubleQuotationIntegerValueDoubleQuotation<'t> {
pub double_quotation: Token<'t>,
pub integer_value: Box<IntegerValue<'t>>,
pub double_quotation0: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct EnumArgStrAsciiNoBrace<'t> {
pub ascii_no_brace: Box<AsciiNoBrace<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct EnumArgStrDoubleQuotationAsciiNoBraceDoubleQuotation<'t> {
pub ascii_no_brace: Box<AsciiNoBrace<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RangeArgStrRangeArg<'t> {
pub range_arg: Box<RangeArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RangeArgStrDoubleQuotationRangeArgDoubleQuotation<'t> {
pub range_arg: Box<RangeArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RangeBoundaryMin<'t> {
pub min: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RangeBoundaryMax<'t> {
pub max: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RangeBoundaryMinusQuestLBracket0Minus9RBracketPlus<'t> {
pub minus_quest_l_bracket0_minus9_r_bracket_plus: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IdentifierRefArgStrIdentifierRef<'t> {
pub identifier_ref: Box<IdentifierRef<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IdentifierRefArgStrDoubleQuotationIdentifierRefDoubleQuotation<'t> {
pub double_quotation: Token<'t>,
pub identifier_ref: Box<IdentifierRef<'t>>,
pub double_quotation0: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KeyArgStrKeyArg<'t> {
pub key_arg: Box<KeyArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KeyArgStrDoubleQuotationKeyArgDoubleQuotation<'t> {
pub key_arg: Box<KeyArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ImportStmtListGroupPrefixStmt<'t> {
pub prefix_stmt: Box<PrefixStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ImportStmtListGroupRevisionDateStmt<'t> {
pub revision_date_stmt: Box<RevisionDateStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ImportStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ImportStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IncludeStmtSuffixSemicolon {}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IncludeStmtSuffixLBraceIncludeStmtListRBrace<'t> {
pub include_stmt_list: Vec<IncludeStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IncludeStmtListGroupRevisionDateStmt<'t> {
pub revision_date_stmt: Box<RevisionDateStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IncludeStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IncludeStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UriStrUriArg<'t> {
pub uri_arg: Box<UriArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UriStrDoubleQuotationUriArgDoubleQuotation<'t> {
pub uri_arg: Box<UriArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RevisionStmtListGroupDescriptionStmt<'t> {
pub description_stmt: Box<DescriptionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RevisionStmtListGroupReferenceStmt<'t> {
pub reference_stmt: Box<ReferenceStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DateArgStrDateArg<'t> {
pub date_arg: Box<DateArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DateArgStrDoubleQuotationDateArgDoubleQuotation<'t> {
pub date_arg: Box<DateArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct YstringBasicStringYstringOpt<'t> {
pub basic_string: Box<BasicString<'t>>,
pub ystring_opt: Option<YstringOpt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct YstringIdentifier<'t> {
pub identifier: Box<Identifier<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BasicStringDQString<'t> {
pub d_q_string: Box<DQString<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BasicStringSQString<'t> {
pub s_q_string: Box<SQString<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DQCharDQUnescaped<'t> {
pub d_q_unescaped: Box<DQUnescaped<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DQCharDQEscaped<'t> {
pub d_q_escaped: Box<DQEscaped<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DQUnescapedDQNoEscape<'t> {
pub d_q_no_escape: Box<DQNoEscape<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DQUnescapedNonAscii<'t> {
pub non_ascii: Box<NonAscii<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DQEscapeSeqCharEscape<'t> {
pub escape: Box<Escape<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DQEscapeSeqCharDoubleQuotation<'t> {
pub double_quotation: Box<DoubleQuotation<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DQEscapeSeqCharEscN<'t> {
pub esc_n: Box<EscN<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DQEscapeSeqCharEscT<'t> {
pub esc_t: Box<EscT<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SQCharSQUnescaped<'t> {
pub s_q_unescaped: Box<SQUnescaped<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SQCharSQEscaped<'t> {
pub s_q_escaped: Box<SQEscaped<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SQUnescapedSQNoEscape<'t> {
pub s_q_no_escape: Box<SQNoEscape<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SQUnescapedNonAscii<'t> {
pub non_ascii: Box<NonAscii<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IdentifierArgStrIdentifier<'t> {
pub identifier: Box<Identifier<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IdentifierArgStrDoubleQuotationIdentifierDoubleQuotation<'t> {
pub identifier: Box<Identifier<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AbsoluteSchemaNodeid<'t> {
pub slash: Token<'t>,
pub identifier_ref: Box<IdentifierRef<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ActionStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub action_stmt_suffix: Box<ActionStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ActionStmtList<'t> {
pub action_stmt_list_group: Box<ActionStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ActionStmtListGroup<'t> {
IfFeatureStmt(ActionStmtListGroupIfFeatureStmt<'t>),
StatusStmt(ActionStmtListGroupStatusStmt<'t>),
DescriptionStmt(ActionStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(ActionStmtListGroupReferenceStmt<'t>),
InputStmt(ActionStmtListGroupInputStmt<'t>),
OutputStmt(ActionStmtListGroupOutputStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ActionStmtSuffix<'t> {
Semicolon(ActionStmtSuffixSemicolon<'t>),
LBraceActionStmtListRBrace(ActionStmtSuffixLBraceActionStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnydataStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub anydata_stmt_suffix: Box<AnydataStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnydataStmtList<'t> {
pub anydata_stmt_list_group: Box<AnydataStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum AnydataStmtListGroup<'t> {
WhenStmt(AnydataStmtListGroupWhenStmt<'t>),
IfFeatureStmt(AnydataStmtListGroupIfFeatureStmt<'t>),
MustStmt(AnydataStmtListGroupMustStmt<'t>),
ConfigStmt(AnydataStmtListGroupConfigStmt<'t>),
MandatoryStmt(AnydataStmtListGroupMandatoryStmt<'t>),
StatusStmt(AnydataStmtListGroupStatusStmt<'t>),
DescriptionStmt(AnydataStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(AnydataStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum AnydataStmtSuffix<'t> {
Semicolon(AnydataStmtSuffixSemicolon),
LBraceAnydataStmtListRBrace(AnydataStmtSuffixLBraceAnydataStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnyxmlStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub anyxml_stmt_suffix: Box<AnyxmlStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AnyxmlStmtList<'t> {
pub anyxml_stmt_list_group: Box<AnyxmlStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum AnyxmlStmtListGroup<'t> {
WhenStmt(AnyxmlStmtListGroupWhenStmt<'t>),
IfFeatureStmt(AnyxmlStmtListGroupIfFeatureStmt<'t>),
MustStmt(AnyxmlStmtListGroupMustStmt<'t>),
ConfigStmt(AnyxmlStmtListGroupConfigStmt<'t>),
MandatoryStmt(AnyxmlStmtListGroupMandatoryStmt<'t>),
StatusStmt(AnyxmlStmtListGroupStatusStmt<'t>),
DescriptionStmt(AnyxmlStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(AnyxmlStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum AnyxmlStmtSuffix<'t> {
Semicolon(AnyxmlStmtSuffixSemicolon),
LBraceAnyxmlStmtListRBrace(AnyxmlStmtSuffixLBraceAnyxmlStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ArgumentStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AsciiNoBrace<'t> {
pub ascii_no_brace: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AsciiNoSemicolon<'t> {
pub ascii_no_semicolon: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AugmentArgStr<'t> {
pub ystring: Box<Ystring<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AugmentStmt<'t> {
pub augment_arg_str: Box<AugmentArgStr<'t>>,
pub augment_stmt_list: Vec<AugmentStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct AugmentStmtList<'t> {
pub augment_stmt_list_group: Box<AugmentStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum AugmentStmtListGroup<'t> {
WhenStmt(AugmentStmtListGroupWhenStmt<'t>),
IfFeatureStmt(AugmentStmtListGroupIfFeatureStmt<'t>),
StatusStmt(AugmentStmtListGroupStatusStmt<'t>),
DescriptionStmt(AugmentStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(AugmentStmtListGroupReferenceStmt<'t>),
DataDefStmt(AugmentStmtListGroupDataDefStmt<'t>),
CaseStmt(AugmentStmtListGroupCaseStmt<'t>),
ActionStmt(AugmentStmtListGroupActionStmt<'t>),
NotificationStmt(AugmentStmtListGroupNotificationStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BaseStmt<'t> {
pub identifier_ref_arg_str: Box<IdentifierRefArgStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum BasicString<'t> {
DQString(BasicStringDQString<'t>),
SQString(BasicStringSQString<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BelongsToStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub prefix_stmt: Box<PrefixStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BitStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub bit_stmt_suffix: Box<BitStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct BitStmtList<'t> {
pub bit_stmt_list_group: Box<BitStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum BitStmtListGroup<'t> {
PositionStmt(BitStmtListGroupPositionStmt<'t>),
DescriptionStmt(BitStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(BitStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum BitStmtSuffix<'t> {
Semicolon(BitStmtSuffixSemicolon),
LBraceBitStmtListRBrace(BitStmtSuffixLBraceBitStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum BodyStmts<'t> {
ExtensionStmt(BodyStmtsExtensionStmt<'t>),
FeatureStmt(BodyStmtsFeatureStmt<'t>),
IdentityStmt(BodyStmtsIdentityStmt<'t>),
TypedefStmt(BodyStmtsTypedefStmt<'t>),
GroupingStmt(BodyStmtsGroupingStmt<'t>),
DataDefStmt(BodyStmtsDataDefStmt<'t>),
AugmentStmt(BodyStmtsAugmentStmt<'t>),
RpcStmt(BodyStmtsRpcStmt<'t>),
NotificationStmt(BodyStmtsNotificationStmt<'t>),
DeviationStmt(BodyStmtsDeviationStmt<'t>),
UnknownStmt(BodyStmtsUnknownStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct CaseStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub case_stmt_suffix: Box<CaseStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct CaseStmtList<'t> {
pub case_stmt_list_group: Box<CaseStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum CaseStmtListGroup<'t> {
WhenStmt(CaseStmtListGroupWhenStmt<'t>),
IfFeatureStmt(CaseStmtListGroupIfFeatureStmt<'t>),
DataDefStmt(CaseStmtListGroupDataDefStmt<'t>),
DescriptionStmt(CaseStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(CaseStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum CaseStmtSuffix<'t> {
Semicolon(CaseStmtSuffixSemicolon),
LBraceCaseStmtListRBrace(CaseStmtSuffixLBraceCaseStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmt<'t> {
pub identifier_ref_arg_str: Box<IdentifierRefArgStr<'t>>,
pub choice_stmt_suffix: Box<ChoiceStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ChoiceStmtList<'t> {
pub choice_stmt_list_group: Box<ChoiceStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ChoiceStmtListGroup<'t> {
WhenStmt(ChoiceStmtListGroupWhenStmt<'t>),
IfFeatureStmt(ChoiceStmtListGroupIfFeatureStmt<'t>),
DefaultStmt(ChoiceStmtListGroupDefaultStmt<'t>),
ConfigStmt(ChoiceStmtListGroupConfigStmt<'t>),
MandatoryStmt(ChoiceStmtListGroupMandatoryStmt<'t>),
StatusStmt(ChoiceStmtListGroupStatusStmt<'t>),
DescriptionStmt(ChoiceStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(ChoiceStmtListGroupReferenceStmt<'t>),
ShortCaseStmt(ChoiceStmtListGroupShortCaseStmt<'t>),
CaseStmt(ChoiceStmtListGroupCaseStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ChoiceStmtSuffix<'t> {
Semicolon(ChoiceStmtSuffixSemicolon),
LBraceChoiceStmtListRBrace(ChoiceStmtSuffixLBraceChoiceStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ConfigStmt<'t> {
pub mandatory_arg_str: Box<MandatoryArgStr<'t>>,
pub semicolon: Box<Semicolon<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContactStmt<'t> {
pub ystring: Box<Ystring<'t>>,
pub semicolon: Box<Semicolon<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub container_stmt_suffix: Box<ContainerStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ContainerStmtList<'t> {
pub container_stmt_list_group: Box<ContainerStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ContainerStmtListGroup<'t> {
WhenStmt(ContainerStmtListGroupWhenStmt<'t>),
IfFeatureStmt(ContainerStmtListGroupIfFeatureStmt<'t>),
MustStmt(ContainerStmtListGroupMustStmt<'t>),
PresenceStmt(ContainerStmtListGroupPresenceStmt<'t>),
ConfigStmt(ContainerStmtListGroupConfigStmt<'t>),
StatusStmt(ContainerStmtListGroupStatusStmt<'t>),
DescriptionStmt(ContainerStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(ContainerStmtListGroupReferenceStmt<'t>),
DataDefStmt(ContainerStmtListGroupDataDefStmt<'t>),
ActionStmt(ContainerStmtListGroupActionStmt<'t>),
NotificationStmt(ContainerStmtListGroupNotificationStmt<'t>),
UnknownStmt(ContainerStmtListGroupUnknownStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ContainerStmtSuffix<'t> {
Semicolon(ContainerStmtSuffixSemicolon),
LBraceContainerStmtListRBrace(ContainerStmtSuffixLBraceContainerStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum DQChar<'t> {
DQUnescaped(DQCharDQUnescaped<'t>),
DQEscaped(DQCharDQEscaped<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum DQEscapeSeqChar<'t> {
Escape(DQEscapeSeqCharEscape<'t>),
DoubleQuotation(DQEscapeSeqCharDoubleQuotation<'t>),
EscN(DQEscapeSeqCharEscN<'t>),
EscT(DQEscapeSeqCharEscT<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DQEscaped<'t> {
pub escape: Box<Escape<'t>>,
pub d_q_escape_seq_char: Box<DQEscapeSeqChar<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DQNoEscape<'t> {
pub d_q_no_escape: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DQString<'t> {
pub d_q_string_list: Vec<DQStringList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DQStringList<'t> {
pub d_q_char: Box<DQChar<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum DQUnescaped<'t> {
DQNoEscape(DQUnescapedDQNoEscape<'t>),
NonAscii(DQUnescapedNonAscii<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum DataDefStmt<'t> {
ContainerStmt(DataDefStmtContainerStmt<'t>),
LeafStmt(DataDefStmtLeafStmt<'t>),
LeafListStmt(DataDefStmtLeafListStmt<'t>),
ListStmt(DataDefStmtListStmt<'t>),
ChoiceStmt(DataDefStmtChoiceStmt<'t>),
AnydataStmt(DataDefStmtAnydataStmt<'t>),
AnyxmlStmt(DataDefStmtAnyxmlStmt<'t>),
UsesStmt(DataDefStmtUsesStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DateArg<'t> {
pub date_arg: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum DateArgStr<'t> {
DateArg(DateArgStrDateArg<'t>),
DoubleQuotationDateArgDoubleQuotation(DateArgStrDoubleQuotationDateArgDoubleQuotation<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DefaultStmt<'t> {
pub default_stmt_suffix: Box<DefaultStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum DefaultStmtSuffix<'t> {
AsciiNoSemicolonSemicolon(DefaultStmtSuffixAsciiNoSemicolonSemicolon<'t>),
DoubleQuotationAsciiNoSemicolonDoubleQuotationSemicolon(
DefaultStmtSuffixDoubleQuotationAsciiNoSemicolonDoubleQuotationSemicolon<'t>,
),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum DescendantSchemaNodeid<'t> {
IdentifierRef(DescendantSchemaNodeidIdentifierRef<'t>),
AbsoluteSchemaNodeid(DescendantSchemaNodeidAbsoluteSchemaNodeid<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DescriptionStmt<'t> {
pub ystring: Box<Ystring<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DeviationStmt<'t> {
pub absolute_schema_nodeid: Box<AbsoluteSchemaNodeid<'t>>,
pub semicolon: Box<Semicolon<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct DoubleQuotation<'t> {
pub double_quotation: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum EnumArgStr<'t> {
AsciiNoBrace(EnumArgStrAsciiNoBrace<'t>),
DoubleQuotationAsciiNoBraceDoubleQuotation(
EnumArgStrDoubleQuotationAsciiNoBraceDoubleQuotation<'t>,
),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct EnumStmt<'t> {
pub enum_arg_str: Box<EnumArgStr<'t>>,
pub enum_stmt_suffix: Box<EnumStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct EnumStmtList<'t> {
pub enum_stmt_list_group: Box<EnumStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum EnumStmtListGroup<'t> {
IfFeatureStmt(EnumStmtListGroupIfFeatureStmt<'t>),
DescriptionStmt(EnumStmtListGroupDescriptionStmt<'t>),
ValueStmt(EnumStmtListGroupValueStmt<'t>),
ReferenceStmt(EnumStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum EnumStmtSuffix<'t> {
Semicolon(EnumStmtSuffixSemicolon),
LBraceEnumStmtListRBrace(EnumStmtSuffixLBraceEnumStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ErrorMessage<'t> {
pub error_minus_message: Token<'t>,
pub ystring: Box<Ystring<'t>>,
pub semicolon: Box<Semicolon<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct EscN<'t> {
pub esc_n: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct EscT<'t> {
pub esc_t: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct Escape<'t> {
pub escape: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ExtensionStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub extension_stmt_suffix: Box<ExtensionStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ExtensionStmtList<'t> {
pub extension_stmt_list_group: Box<ExtensionStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ExtensionStmtListGroup<'t> {
ArgumentStmt(ExtensionStmtListGroupArgumentStmt<'t>),
StatusStmt(ExtensionStmtListGroupStatusStmt<'t>),
DescriptionStmt(ExtensionStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(ExtensionStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ExtensionStmtSuffix<'t> {
Semicolon(ExtensionStmtSuffixSemicolon),
LBraceExtensionStmtListRBrace(ExtensionStmtSuffixLBraceExtensionStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct FeatureStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub feature_stmt_suffix: Box<FeatureStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct FeatureStmtList<'t> {
pub feature_stmt_list_group: Box<FeatureStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum FeatureStmtListGroup<'t> {
IfFeatureStmt(FeatureStmtListGroupIfFeatureStmt<'t>),
StatusStmt(FeatureStmtListGroupStatusStmt<'t>),
DescriptionStmt(FeatureStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(FeatureStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum FeatureStmtSuffix<'t> {
Semicolon(FeatureStmtSuffixSemicolon),
LBraceFeatureStmtListRBrace(FeatureStmtSuffixLBraceFeatureStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct FractionDigitsArg<'t> {
pub fraction_digits_arg: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct FractionDigitsStmt<'t> {
pub fraction_digits_arg: Box<FractionDigitsArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct GroupingStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub grouping_stmt_list: Vec<GroupingStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct GroupingStmtList<'t> {
pub grouping_stmt_list_group: Box<GroupingStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum GroupingStmtListGroup<'t> {
StatusStmt(GroupingStmtListGroupStatusStmt<'t>),
DescriptionStmt(GroupingStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(GroupingStmtListGroupReferenceStmt<'t>),
TypedefStmt(GroupingStmtListGroupTypedefStmt<'t>),
GroupingStmt(GroupingStmtListGroupGroupingStmt<'t>),
DataDefStmt(GroupingStmtListGroupDataDefStmt<'t>),
ActionStmt(GroupingStmtListGroupActionStmt<'t>),
NotificationStmt(GroupingStmtListGroupNotificationStmt<'t>),
UnknownStmt(GroupingStmtListGroupUnknownStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct Identifier<'t> {
pub identifier: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum IdentifierArgStr<'t> {
Identifier(IdentifierArgStrIdentifier<'t>),
DoubleQuotationIdentifierDoubleQuotation(
IdentifierArgStrDoubleQuotationIdentifierDoubleQuotation<'t>,
),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IdentifierRef<'t> {
pub identifier_ref_opt: Option<IdentifierRefOpt<'t>>,
pub identifier: Box<Identifier<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum IdentifierRefArgStr<'t> {
IdentifierRef(IdentifierRefArgStrIdentifierRef<'t>),
DoubleQuotationIdentifierRefDoubleQuotation(
IdentifierRefArgStrDoubleQuotationIdentifierRefDoubleQuotation<'t>,
),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IdentifierRefOpt<'t> {
pub identifier: Box<Identifier<'t>>,
pub colon: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IdentityStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub identity_stmt_list: Vec<IdentityStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IdentityStmtList<'t> {
pub identity_stmt_list_group: Box<IdentityStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum IdentityStmtListGroup<'t> {
IfFeatureStmt(IdentityStmtListGroupIfFeatureStmt<'t>),
BaseStmt(IdentityStmtListGroupBaseStmt<'t>),
DescriptionStmt(IdentityStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(IdentityStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IfFeatureExpr<'t> {
pub if_feature_term: Box<IfFeatureTerm<'t>>,
pub if_feature_expr_opt: Option<IfFeatureExprOpt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IfFeatureExprOpt<'t> {
pub or: Token<'t>,
pub if_feature_expr: Box<IfFeatureExpr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IfFeatureExprStr<'t> {
pub if_feature_expr: Box<IfFeatureExpr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum IfFeatureFactor<'t> {
NotIfFeatureFactor(IfFeatureFactorNotIfFeatureFactor<'t>),
LParenIfFeatureExprRParen(IfFeatureFactorLParenIfFeatureExprRParen<'t>),
Identifier(IfFeatureFactorIdentifier<'t>),
DoubleQuotationIdentifierDoubleQuotation(
IfFeatureFactorDoubleQuotationIdentifierDoubleQuotation<'t>,
),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IfFeatureStmt<'t> {
pub if_feature_expr_str: Box<IfFeatureExprStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IfFeatureTerm<'t> {
pub if_feature_factor: Box<IfFeatureFactor<'t>>,
pub if_feature_term_opt: Option<IfFeatureTermOpt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IfFeatureTermOpt<'t> {
pub and: Token<'t>,
pub if_feature_term: Box<IfFeatureTerm<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ImportStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub import_stmt_list: Vec<ImportStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ImportStmtList<'t> {
pub import_stmt_list_group: Box<ImportStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ImportStmtListGroup<'t> {
PrefixStmt(ImportStmtListGroupPrefixStmt<'t>),
RevisionDateStmt(ImportStmtListGroupRevisionDateStmt<'t>),
DescriptionStmt(ImportStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(ImportStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IncludeStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub include_stmt_suffix: Box<IncludeStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IncludeStmtList<'t> {
pub include_stmt_list_group: Box<IncludeStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum IncludeStmtListGroup<'t> {
RevisionDateStmt(IncludeStmtListGroupRevisionDateStmt<'t>),
DescriptionStmt(IncludeStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(IncludeStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum IncludeStmtSuffix<'t> {
Semicolon(IncludeStmtSuffixSemicolon),
LBraceIncludeStmtListRBrace(IncludeStmtSuffixLBraceIncludeStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct InputStmt<'t> {
pub input: Token<'t>,
pub input_stmt_list: Vec<InputStmtList<'t>>,
pub r_brace: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct InputStmtList<'t> {
pub data_def_stmt: Box<DataDefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct IntegerValue<'t> {
pub integer_value: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum IntegerValueStr<'t> {
IntegerValue(IntegerValueStrIntegerValue<'t>),
DoubleQuotationIntegerValueDoubleQuotation(
IntegerValueStrDoubleQuotationIntegerValueDoubleQuotation<'t>,
),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KeyArg<'t> {
pub identifier_ref: Box<IdentifierRef<'t>>,
pub key_arg_opt: Option<KeyArgOpt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KeyArgOpt<'t> {
pub key_arg: Box<KeyArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum KeyArgStr<'t> {
KeyArg(KeyArgStrKeyArg<'t>),
DoubleQuotationKeyArgDoubleQuotation(KeyArgStrDoubleQuotationKeyArgDoubleQuotation<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KeyStmt<'t> {
pub key_arg_str: Box<KeyArgStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwAction<'t> {
pub kw_action: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwAnydata<'t> {
pub kw_anydata: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwAnyxml<'t> {
pub kw_anyxml: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwArgument<'t> {
pub kw_argument: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwBase<'t> {
pub kw_base: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwBelongsTo<'t> {
pub kw_belongs_to: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwBit<'t> {
pub kw_bit: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwCase<'t> {
pub kw_case: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwChoice<'t> {
pub kw_choice: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwConfig<'t> {
pub kw_config: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwContainer<'t> {
pub kw_container: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwDefault<'t> {
pub kw_default: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwDeviation<'t> {
pub kw_deviation: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwEnum<'t> {
pub kw_enum: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwExtension<'t> {
pub kw_extension: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwFeature<'t> {
pub kw_feature: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwFractionDigits<'t> {
pub kw_fraction_digits: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwGrouping<'t> {
pub kw_grouping: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwIdentity<'t> {
pub kw_identity: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwIfFeature<'t> {
pub kw_if_feature: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwImport<'t> {
pub kw_import: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwInclude<'t> {
pub kw_include: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwKey<'t> {
pub kw_key: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwLeaf<'t> {
pub kw_leaf: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwLeafList<'t> {
pub kw_leaf_list: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwLength<'t> {
pub kw_length: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwList<'t> {
pub kw_list: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwMandatory<'t> {
pub kw_mandatory: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwModule<'t> {
pub kw_module: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwNamespace<'t> {
pub kw_namespace: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwNotification<'t> {
pub kw_notification: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwOrderedBy<'t> {
pub kw_ordered_by: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwPosition<'t> {
pub kw_position: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwPrefix<'t> {
pub kw_prefix: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwRange<'t> {
pub kw_range: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwRefine<'t> {
pub kw_refine: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwRequireInstance<'t> {
pub kw_require_instance: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwRevision<'t> {
pub kw_revision: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwRevisionDate<'t> {
pub kw_revision_date: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwRpc<'t> {
pub kw_rpc: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwStatus<'t> {
pub kw_status: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwSubmodule<'t> {
pub kw_submodule: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwType<'t> {
pub kw_type: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwTypedef<'t> {
pub kw_typedef: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwUses<'t> {
pub kw_uses: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwValue<'t> {
pub kw_value: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct KwYangVersion<'t> {
pub kw_yang_version: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LBrace<'t> {
pub l_brace: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub leaf_list_stmt_list: Vec<LeafListStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafListStmtList<'t> {
pub leaf_list_stmt_list_group: Box<LeafListStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum LeafListStmtListGroup<'t> {
WhenStmt(LeafListStmtListGroupWhenStmt<'t>),
IfFeatureStmt(LeafListStmtListGroupIfFeatureStmt<'t>),
TypeStmt(LeafListStmtListGroupTypeStmt<'t>),
UnitsStmt(LeafListStmtListGroupUnitsStmt<'t>),
MustStmt(LeafListStmtListGroupMustStmt<'t>),
DefaultStmt(LeafListStmtListGroupDefaultStmt<'t>),
ConfigStmt(LeafListStmtListGroupConfigStmt<'t>),
MinElementsStmt(LeafListStmtListGroupMinElementsStmt<'t>),
MaxElementsStmt(LeafListStmtListGroupMaxElementsStmt<'t>),
OrderedByStmt(LeafListStmtListGroupOrderedByStmt<'t>),
StatusStmt(LeafListStmtListGroupStatusStmt<'t>),
DescriptionStmt(LeafListStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(LeafListStmtListGroupReferenceStmt<'t>),
UnknownStmt(LeafListStmtListGroupUnknownStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub leaf_stmt_list: Vec<LeafStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LeafStmtList<'t> {
pub leaf_stmt_list_group: Box<LeafStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum LeafStmtListGroup<'t> {
WhenStmt(LeafStmtListGroupWhenStmt<'t>),
StatusStmt(LeafStmtListGroupStatusStmt<'t>),
IfFeatureStmt(LeafStmtListGroupIfFeatureStmt<'t>),
TypeStmt(LeafStmtListGroupTypeStmt<'t>),
UnitsStmt(LeafStmtListGroupUnitsStmt<'t>),
MustStmt(LeafStmtListGroupMustStmt<'t>),
DefaultStmt(LeafStmtListGroupDefaultStmt<'t>),
ConfigStmt(LeafStmtListGroupConfigStmt<'t>),
MandatoryStmt(LeafStmtListGroupMandatoryStmt<'t>),
DescriptionStmt(LeafStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(LeafStmtListGroupReferenceStmt<'t>),
UnknownStmt(LeafStmtListGroupUnknownStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum LeafrefSpecification<'t> {
PathStmt(LeafrefSpecificationPathStmt<'t>),
RequireInstanceStmt(LeafrefSpecificationRequireInstanceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct LengthStmt<'t> {
pub range_arg_str: Box<RangeArgStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum LinkageStmts<'t> {
ImportStmt(LinkageStmtsImportStmt<'t>),
IncludeStmt(LinkageStmtsIncludeStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub list_stmt_list: Vec<ListStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ListStmtList<'t> {
pub list_stmt_list_group: Box<ListStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ListStmtListGroup<'t> {
WhenStmt(ListStmtListGroupWhenStmt<'t>),
IfFeatureStmt(ListStmtListGroupIfFeatureStmt<'t>),
MustStmt(ListStmtListGroupMustStmt<'t>),
KeyStmt(ListStmtListGroupKeyStmt<'t>),
ConfigStmt(ListStmtListGroupConfigStmt<'t>),
MinElementsStmt(ListStmtListGroupMinElementsStmt<'t>),
MaxElementsStmt(ListStmtListGroupMaxElementsStmt<'t>),
OrderedByStmt(ListStmtListGroupOrderedByStmt<'t>),
StatusStmt(ListStmtListGroupStatusStmt<'t>),
DescriptionStmt(ListStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(ListStmtListGroupReferenceStmt<'t>),
DataDefStmt(ListStmtListGroupDataDefStmt<'t>),
ActionStmt(ListStmtListGroupActionStmt<'t>),
NotificationStmt(ListStmtListGroupNotificationStmt<'t>),
UnknownStmt(ListStmtListGroupUnknownStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MandatoryArg<'t> {
pub mandatory_arg: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum MandatoryArgStr<'t> {
MandatoryArg(MandatoryArgStrMandatoryArg<'t>),
DoubleQuotationMandatoryArgDoubleQuotation(
MandatoryArgStrDoubleQuotationMandatoryArgDoubleQuotation<'t>,
),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MandatoryStmt<'t> {
pub mandatory_arg_str: Box<MandatoryArgStr<'t>>,
pub semicolon: Box<Semicolon<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MaxElementsStmt<'t> {
pub l_bracket1_minus9_r_bracket_l_bracket0_minus9_r_bracket_star: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum MetaStmts<'t> {
OrganizationStmt(MetaStmtsOrganizationStmt<'t>),
ContactStmt(MetaStmtsContactStmt<'t>),
DescriptionStmt(MetaStmtsDescriptionStmt<'t>),
ReferenceStmt(MetaStmtsReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MinElementsStmt<'t> {
pub l_bracket1_minus9_r_bracket_l_bracket0_minus9_r_bracket_star: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ModuleHeaderStmts<'t> {
YangVersionStmt(ModuleHeaderStmtsYangVersionStmt<'t>),
NamespaceStmt(ModuleHeaderStmtsNamespaceStmt<'t>),
PrefixStmt(ModuleHeaderStmtsPrefixStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ModuleStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub module_stmt_list: Vec<ModuleStmtList<'t>>,
pub module_stmt_list0: Vec<ModuleStmtList0<'t>>,
pub module_stmt_list1: Vec<ModuleStmtList1<'t>>,
pub module_stmt_list2: Vec<ModuleStmtList2<'t>>,
pub module_stmt_list3: Vec<ModuleStmtList3<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ModuleStmtList<'t> {
pub module_header_stmts: Box<ModuleHeaderStmts<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ModuleStmtList0<'t> {
pub linkage_stmts: Box<LinkageStmts<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ModuleStmtList1<'t> {
pub meta_stmts: Box<MetaStmts<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ModuleStmtList2<'t> {
pub revision_stmt: Box<RevisionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ModuleStmtList3<'t> {
pub body_stmts: Box<BodyStmts<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MustStmt<'t> {
pub ystring: Box<Ystring<'t>>,
pub must_stmt_suffix: Box<MustStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct MustStmtList<'t> {
pub must_stmt_list_group: Box<MustStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum MustStmtListGroup<'t> {
ErrorMessage(MustStmtListGroupErrorMessage<'t>),
DescriptionStmt(MustStmtListGroupDescriptionStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum MustStmtSuffix<'t> {
Semicolon(MustStmtSuffixSemicolon),
LBraceMustStmtListRBrace(MustStmtSuffixLBraceMustStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct NamespaceStmt<'t> {
pub uri_str: Box<UriStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct NonAscii<'t> {
pub non_ascii: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct NotificationStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub notification_stmt_list: Vec<NotificationStmtList<'t>>,
pub r_brace: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct NotificationStmtList<'t> {
pub notification_stmt_list_group: Box<NotificationStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum NotificationStmtListGroup<'t> {
IfFeatureStmt(NotificationStmtListGroupIfFeatureStmt<'t>),
MustStmt(NotificationStmtListGroupMustStmt<'t>),
StatusStmt(NotificationStmtListGroupStatusStmt<'t>),
DescriptionStmt(NotificationStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(NotificationStmtListGroupReferenceStmt<'t>),
TypedefStmt(NotificationStmtListGroupTypedefStmt<'t>),
GroupingStmt(NotificationStmtListGroupGroupingStmt<'t>),
DataDefStmt(NotificationStmtListGroupDataDefStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct OrderedByArg<'t> {
pub ordered_by_arg: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum OrderedByArgStr<'t> {
OrderedByArg(OrderedByArgStrOrderedByArg<'t>),
DoubleQuotationOrderedByArgDoubleQuotation(
OrderedByArgStrDoubleQuotationOrderedByArgDoubleQuotation<'t>,
),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct OrderedByStmt<'t> {
pub ordered_by_arg_str: Box<OrderedByArgStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct OrganizationStmt<'t> {
pub ystring: Box<Ystring<'t>>,
pub semicolon: Box<Semicolon<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct OutputStmt<'t> {
pub output: Token<'t>,
pub output_stmt_list: Vec<OutputStmtList<'t>>,
pub r_brace: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct OutputStmtList<'t> {
pub data_def_stmt: Box<DataDefStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct PathStmt<'t> {
pub ystring: Box<Ystring<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct PatternStmt<'t> {
pub pattern: Token<'t>,
pub ystring: Box<Ystring<'t>>,
pub semicolon: Box<Semicolon<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct PositionStmt<'t> {
pub integer_value_str: Box<IntegerValueStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct PrefixStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct PresenceStmt<'t> {
pub ystring: Box<Ystring<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RangeArg<'t> {
pub range_part: Box<RangePart<'t>>,
pub range_arg_opt: Option<RangeArgOpt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RangeArgOpt<'t> {
pub or: Token<'t>,
pub range_arg: Box<RangeArg<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum RangeArgStr<'t> {
RangeArg(RangeArgStrRangeArg<'t>),
DoubleQuotationRangeArgDoubleQuotation(RangeArgStrDoubleQuotationRangeArgDoubleQuotation<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum RangeBoundary<'t> {
Min(RangeBoundaryMin<'t>),
Max(RangeBoundaryMax<'t>),
MinusQuestLBracket0Minus9RBracketPlus(RangeBoundaryMinusQuestLBracket0Minus9RBracketPlus<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RangePart<'t> {
pub range_boundary: Box<RangeBoundary<'t>>,
pub range_part_opt: Option<RangePartOpt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RangePartOpt<'t> {
pub dot_dot: Token<'t>,
pub range_boundary: Box<RangeBoundary<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RangeStmt<'t> {
pub range_arg_str: Box<RangeArgStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ReferenceStmt<'t> {
pub ystring: Box<Ystring<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineArg<'t> {
pub descendant_schema_nodeid: Box<DescendantSchemaNodeid<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum RefineArgStr<'t> {
RefineArg(RefineArgStrRefineArg<'t>),
DoubleQuotationRefineArgDoubleQuotation(
RefineArgStrDoubleQuotationRefineArgDoubleQuotation<'t>,
),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmt<'t> {
pub refine_arg_str: Box<RefineArgStr<'t>>,
pub refine_stmt_suffix: Box<RefineStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RefineStmtList<'t> {
pub refine_stmt_list_group: Box<RefineStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum RefineStmtListGroup<'t> {
IfFeatureStmt(RefineStmtListGroupIfFeatureStmt<'t>),
MustStmt(RefineStmtListGroupMustStmt<'t>),
PresenceStmt(RefineStmtListGroupPresenceStmt<'t>),
DefaultStmt(RefineStmtListGroupDefaultStmt<'t>),
ConfigStmt(RefineStmtListGroupConfigStmt<'t>),
MandatoryStmt(RefineStmtListGroupMandatoryStmt<'t>),
MinElementsStmt(RefineStmtListGroupMinElementsStmt<'t>),
MaxElementsStmt(RefineStmtListGroupMaxElementsStmt<'t>),
DescriptionStmt(RefineStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(RefineStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum RefineStmtSuffix<'t> {
Semicolon(RefineStmtSuffixSemicolon),
LBraceRefineStmtListRBrace(RefineStmtSuffixLBraceRefineStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum RequireInstanceArgStr<'t> {
MandatoryArg(RequireInstanceArgStrMandatoryArg<'t>),
DoubleQuotationMandatoryArgDoubleQuotation(
RequireInstanceArgStrDoubleQuotationMandatoryArgDoubleQuotation<'t>,
),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RequireInstanceStmt<'t> {
pub require_instance_arg_str: Box<RequireInstanceArgStr<'t>>,
pub semicolon: Box<Semicolon<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RevisionDateStmt<'t> {
pub date_arg_str: Box<DateArgStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RevisionStmt<'t> {
pub date_arg_str: Box<DateArgStr<'t>>,
pub revision_stmt_list: Vec<RevisionStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RevisionStmtList<'t> {
pub revision_stmt_list_group: Box<RevisionStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum RevisionStmtListGroup<'t> {
DescriptionStmt(RevisionStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(RevisionStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RpcStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub rpc_stmt_suffix: Box<RpcStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct RpcStmtList<'t> {
pub rpc_stmt_list_group: Box<RpcStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum RpcStmtListGroup<'t> {
IfFeatureStmt(RpcStmtListGroupIfFeatureStmt<'t>),
StatusStmt(RpcStmtListGroupStatusStmt<'t>),
DescriptionStmt(RpcStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(RpcStmtListGroupReferenceStmt<'t>),
TypedefStmt(RpcStmtListGroupTypedefStmt<'t>),
GroupingStmt(RpcStmtListGroupGroupingStmt<'t>),
InputStmt(RpcStmtListGroupInputStmt<'t>),
OutputStmt(RpcStmtListGroupOutputStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum RpcStmtSuffix<'t> {
Semicolon(RpcStmtSuffixSemicolon<'t>),
LBraceRpcStmtListRBrace(RpcStmtSuffixLBraceRpcStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum SQChar<'t> {
SQUnescaped(SQCharSQUnescaped<'t>),
SQEscaped(SQCharSQEscaped<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SQEscapeSeqChar<'t> {
pub s_q_escape_seq_char: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SQEscaped<'t> {
pub escape: Box<Escape<'t>>,
pub s_q_escape_seq_char: Box<SQEscapeSeqChar<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SQNoEscape<'t> {
pub s_q_no_escape: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SQString<'t> {
pub single_quotation: Box<SingleQuotation<'t>>,
pub s_q_string_list: Vec<SQStringList<'t>>,
pub single_quotation0: Box<SingleQuotation<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SQStringList<'t> {
pub s_q_char: Box<SQChar<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum SQUnescaped<'t> {
SQNoEscape(SQUnescapedSQNoEscape<'t>),
NonAscii(SQUnescapedNonAscii<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct Semicolon<'t> {
pub semicolon: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ShortCaseStmt<'t> {
ChoiceStmt(ShortCaseStmtChoiceStmt<'t>),
ContainerStmt(ShortCaseStmtContainerStmt<'t>),
LeafStmt(ShortCaseStmtLeafStmt<'t>),
LeafListStmt(ShortCaseStmtLeafListStmt<'t>),
ListStmt(ShortCaseStmtListStmt<'t>),
AnydataStmt(ShortCaseStmtAnydataStmt<'t>),
AnyxmlStmt(ShortCaseStmtAnyxmlStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SingleQuotation<'t> {
pub single_quotation: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct StatusArg<'t> {
pub status_arg: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum StatusArgStr<'t> {
StatusArg(StatusArgStrStatusArg<'t>),
DoubleQuotationStatusArgDoubleQuotation(
StatusArgStrDoubleQuotationStatusArgDoubleQuotation<'t>,
),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct StatusStmt<'t> {
pub status_arg_str: Box<StatusArgStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum StringRestrictions<'t> {
LengthStmt(StringRestrictionsLengthStmt<'t>),
PatternStmt(StringRestrictionsPatternStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum SubmoduleHeaderStmts<'t> {
YangVersionStmt(SubmoduleHeaderStmtsYangVersionStmt<'t>),
BelongsToStmt(SubmoduleHeaderStmtsBelongsToStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SubmoduleStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub submodule_stmt_list: Vec<SubmoduleStmtList<'t>>,
pub submodule_stmt_list0: Vec<SubmoduleStmtList0<'t>>,
pub submodule_stmt_list1: Vec<SubmoduleStmtList1<'t>>,
pub submodule_stmt_list2: Vec<SubmoduleStmtList2<'t>>,
pub submodule_stmt_list3: Vec<SubmoduleStmtList3<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SubmoduleStmtList<'t> {
pub submodule_header_stmts: Box<SubmoduleHeaderStmts<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SubmoduleStmtList0<'t> {
pub linkage_stmts: Box<LinkageStmts<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SubmoduleStmtList1<'t> {
pub meta_stmts: Box<MetaStmts<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SubmoduleStmtList2<'t> {
pub revision_stmt: Box<RevisionStmt<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct SubmoduleStmtList3<'t> {
pub body_stmts: Box<BodyStmts<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypeStmt<'t> {
pub identifier_ref_arg_str: Box<IdentifierRefArgStr<'t>>,
pub type_stmt_suffix: Box<TypeStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypeStmtList<'t> {
pub type_stmt_list_group: Box<TypeStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum TypeStmtListGroup<'t> {
FractionDigitsStmt(TypeStmtListGroupFractionDigitsStmt<'t>),
EnumStmt(TypeStmtListGroupEnumStmt<'t>),
BaseStmt(TypeStmtListGroupBaseStmt<'t>),
LeafrefSpecification(TypeStmtListGroupLeafrefSpecification<'t>),
StringRestrictions(TypeStmtListGroupStringRestrictions<'t>),
RangeStmt(TypeStmtListGroupRangeStmt<'t>),
BitStmt(TypeStmtListGroupBitStmt<'t>),
TypeStmt(TypeStmtListGroupTypeStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum TypeStmtSuffix<'t> {
Semicolon(TypeStmtSuffixSemicolon),
LBraceTypeStmtListRBrace(TypeStmtSuffixLBraceTypeStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypedefStmt<'t> {
pub identifier_arg_str: Box<IdentifierArgStr<'t>>,
pub typedef_stmt_list: Vec<TypedefStmtList<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct TypedefStmtList<'t> {
pub typedef_stmt_list_group: Box<TypedefStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum TypedefStmtListGroup<'t> {
TypeStmt(TypedefStmtListGroupTypeStmt<'t>),
UnitsStmt(TypedefStmtListGroupUnitsStmt<'t>),
DefaultStmt(TypedefStmtListGroupDefaultStmt<'t>),
StatusStmt(TypedefStmtListGroupStatusStmt<'t>),
DescriptionStmt(TypedefStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(TypedefStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UnitsStmt<'t> {
pub units: Token<'t>,
pub ystring: Box<Ystring<'t>>,
pub semicolon: Box<Semicolon<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UnknownStmt<'t> {
pub identifier_ref: Box<IdentifierRef<'t>>,
pub ystring: Box<Ystring<'t>>,
pub unknown_stmt_suffix: Box<UnknownStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UnknownStmtList<'t> {
pub unknown_stmt_list_group: Box<UnknownStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum UnknownStmtListGroup<'t> {
TypeStmt(UnknownStmtListGroupTypeStmt<'t>),
DescriptionStmt(UnknownStmtListGroupDescriptionStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum UnknownStmtSuffix<'t> {
Semicolon(UnknownStmtSuffixSemicolon),
LBraceUnknownStmtListRBrace(UnknownStmtSuffixLBraceUnknownStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UriArg<'t> {
pub uri_arg: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum UriStr<'t> {
UriArg(UriStrUriArg<'t>),
DoubleQuotationUriArgDoubleQuotation(UriStrDoubleQuotationUriArgDoubleQuotation<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UsesStmt<'t> {
pub identifier_ref_arg_str: Box<IdentifierRefArgStr<'t>>,
pub uses_stmt_suffix: Box<UsesStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct UsesStmtList<'t> {
pub uses_stmt_list_group: Box<UsesStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum UsesStmtListGroup<'t> {
WhenStmt(UsesStmtListGroupWhenStmt<'t>),
IfFeatureStmt(UsesStmtListGroupIfFeatureStmt<'t>),
StatusStmt(UsesStmtListGroupStatusStmt<'t>),
DescriptionStmt(UsesStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(UsesStmtListGroupReferenceStmt<'t>),
RefineStmt(UsesStmtListGroupRefineStmt<'t>),
AugmentStmt(UsesStmtListGroupAugmentStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum UsesStmtSuffix<'t> {
Semicolon(UsesStmtSuffixSemicolon),
LBraceUsesStmtListRBrace(UsesStmtSuffixLBraceUsesStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct ValueStmt<'t> {
pub integer_value_str: Box<IntegerValueStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct WhenStmt<'t> {
pub ystring: Box<Ystring<'t>>,
pub when_stmt_suffix: Box<WhenStmtSuffix<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct WhenStmtList<'t> {
pub when_stmt_list_group: Box<WhenStmtListGroup<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum WhenStmtListGroup<'t> {
DescriptionStmt(WhenStmtListGroupDescriptionStmt<'t>),
ReferenceStmt(WhenStmtListGroupReferenceStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum WhenStmtSuffix<'t> {
Semicolon(WhenStmtSuffixSemicolon),
LBraceWhenStmtListRBrace(WhenStmtSuffixLBraceWhenStmtListRBrace<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum Yang<'t> {
ModuleStmt(YangModuleStmt<'t>),
SubmoduleStmt(YangSubmoduleStmt<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct YangVersionArg<'t> {
pub yang_version_arg: Token<'t>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum YangVersionArgStr<'t> {
YangVersionArg(YangVersionArgStrYangVersionArg<'t>),
DoubleQuotationYangVersionArgDoubleQuotation(
YangVersionArgStrDoubleQuotationYangVersionArgDoubleQuotation<'t>,
),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct YangVersionStmt<'t> {
pub yang_version_arg_str: Box<YangVersionArgStr<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum Ystring<'t> {
BasicStringYstringOpt(YstringBasicStringYstringOpt<'t>),
Identifier(YstringIdentifier<'t>),
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub struct YstringOpt<'t> {
pub plus: Token<'t>,
pub ystring: Box<Ystring<'t>>,
}
#[allow(dead_code)]
#[derive(Debug, Clone)]
pub enum ASTType<'t> {
AbsoluteSchemaNodeid(AbsoluteSchemaNodeid<'t>),
ActionStmt(ActionStmt<'t>),
ActionStmtList(Vec<ActionStmtList<'t>>),
ActionStmtListGroup(ActionStmtListGroup<'t>),
ActionStmtSuffix(ActionStmtSuffix<'t>),
AnydataStmt(AnydataStmt<'t>),
AnydataStmtList(Vec<AnydataStmtList<'t>>),
AnydataStmtListGroup(AnydataStmtListGroup<'t>),
AnydataStmtSuffix(AnydataStmtSuffix<'t>),
AnyxmlStmt(AnyxmlStmt<'t>),
AnyxmlStmtList(Vec<AnyxmlStmtList<'t>>),
AnyxmlStmtListGroup(AnyxmlStmtListGroup<'t>),
AnyxmlStmtSuffix(AnyxmlStmtSuffix<'t>),
ArgumentStmt(ArgumentStmt<'t>),
AsciiNoBrace(AsciiNoBrace<'t>),
AsciiNoSemicolon(AsciiNoSemicolon<'t>),
AugmentArgStr(AugmentArgStr<'t>),
AugmentStmt(AugmentStmt<'t>),
AugmentStmtList(Vec<AugmentStmtList<'t>>),
AugmentStmtListGroup(AugmentStmtListGroup<'t>),
BaseStmt(BaseStmt<'t>),
BasicString(BasicString<'t>),
BelongsToStmt(BelongsToStmt<'t>),
BitStmt(BitStmt<'t>),
BitStmtList(Vec<BitStmtList<'t>>),
BitStmtListGroup(BitStmtListGroup<'t>),
BitStmtSuffix(BitStmtSuffix<'t>),
BodyStmts(BodyStmts<'t>),
CaseStmt(CaseStmt<'t>),
CaseStmtList(Vec<CaseStmtList<'t>>),
CaseStmtListGroup(CaseStmtListGroup<'t>),
CaseStmtSuffix(CaseStmtSuffix<'t>),
ChoiceStmt(ChoiceStmt<'t>),
ChoiceStmtList(Vec<ChoiceStmtList<'t>>),
ChoiceStmtListGroup(ChoiceStmtListGroup<'t>),
ChoiceStmtSuffix(ChoiceStmtSuffix<'t>),
ConfigStmt(ConfigStmt<'t>),
ContactStmt(ContactStmt<'t>),
ContainerStmt(ContainerStmt<'t>),
ContainerStmtList(Vec<ContainerStmtList<'t>>),
ContainerStmtListGroup(ContainerStmtListGroup<'t>),
ContainerStmtSuffix(ContainerStmtSuffix<'t>),
DQChar(DQChar<'t>),
DQEscapeSeqChar(DQEscapeSeqChar<'t>),
DQEscaped(DQEscaped<'t>),
DQNoEscape(DQNoEscape<'t>),
DQString(DQString<'t>),
DQStringList(Vec<DQStringList<'t>>),
DQUnescaped(DQUnescaped<'t>),
DataDefStmt(DataDefStmt<'t>),
DateArg(DateArg<'t>),
DateArgStr(DateArgStr<'t>),
DefaultStmt(DefaultStmt<'t>),
DefaultStmtSuffix(DefaultStmtSuffix<'t>),
DescendantSchemaNodeid(DescendantSchemaNodeid<'t>),
DescriptionStmt(DescriptionStmt<'t>),
DeviationStmt(DeviationStmt<'t>),
DoubleQuotation(DoubleQuotation<'t>),
EnumArgStr(EnumArgStr<'t>),
EnumStmt(EnumStmt<'t>),
EnumStmtList(Vec<EnumStmtList<'t>>),
EnumStmtListGroup(EnumStmtListGroup<'t>),
EnumStmtSuffix(EnumStmtSuffix<'t>),
ErrorMessage(ErrorMessage<'t>),
EscN(EscN<'t>),
EscT(EscT<'t>),
Escape(Escape<'t>),
ExtensionStmt(ExtensionStmt<'t>),
ExtensionStmtList(Vec<ExtensionStmtList<'t>>),
ExtensionStmtListGroup(ExtensionStmtListGroup<'t>),
ExtensionStmtSuffix(ExtensionStmtSuffix<'t>),
FeatureStmt(FeatureStmt<'t>),
FeatureStmtList(Vec<FeatureStmtList<'t>>),
FeatureStmtListGroup(FeatureStmtListGroup<'t>),
FeatureStmtSuffix(FeatureStmtSuffix<'t>),
FractionDigitsArg(FractionDigitsArg<'t>),
FractionDigitsStmt(FractionDigitsStmt<'t>),
GroupingStmt(GroupingStmt<'t>),
GroupingStmtList(Vec<GroupingStmtList<'t>>),
GroupingStmtListGroup(GroupingStmtListGroup<'t>),
Identifier(Identifier<'t>),
IdentifierArgStr(IdentifierArgStr<'t>),
IdentifierRef(IdentifierRef<'t>),
IdentifierRefArgStr(IdentifierRefArgStr<'t>),
IdentifierRefOpt(Option<IdentifierRefOpt<'t>>),
IdentityStmt(IdentityStmt<'t>),
IdentityStmtList(Vec<IdentityStmtList<'t>>),
IdentityStmtListGroup(IdentityStmtListGroup<'t>),
IfFeatureExpr(IfFeatureExpr<'t>),
IfFeatureExprOpt(Option<IfFeatureExprOpt<'t>>),
IfFeatureExprStr(IfFeatureExprStr<'t>),
IfFeatureFactor(IfFeatureFactor<'t>),
IfFeatureStmt(IfFeatureStmt<'t>),
IfFeatureTerm(IfFeatureTerm<'t>),
IfFeatureTermOpt(Option<IfFeatureTermOpt<'t>>),
ImportStmt(ImportStmt<'t>),
ImportStmtList(Vec<ImportStmtList<'t>>),
ImportStmtListGroup(ImportStmtListGroup<'t>),
IncludeStmt(IncludeStmt<'t>),
IncludeStmtList(Vec<IncludeStmtList<'t>>),
IncludeStmtListGroup(IncludeStmtListGroup<'t>),
IncludeStmtSuffix(IncludeStmtSuffix<'t>),
InputStmt(InputStmt<'t>),
InputStmtList(Vec<InputStmtList<'t>>),
IntegerValue(IntegerValue<'t>),
IntegerValueStr(IntegerValueStr<'t>),
KeyArg(KeyArg<'t>),
KeyArgOpt(Option<KeyArgOpt<'t>>),
KeyArgStr(KeyArgStr<'t>),
KeyStmt(KeyStmt<'t>),
KwAction(KwAction<'t>),
KwAnydata(KwAnydata<'t>),
KwAnyxml(KwAnyxml<'t>),
KwArgument(KwArgument<'t>),
KwBase(KwBase<'t>),
KwBelongsTo(KwBelongsTo<'t>),
KwBit(KwBit<'t>),
KwCase(KwCase<'t>),
KwChoice(KwChoice<'t>),
KwConfig(KwConfig<'t>),
KwContainer(KwContainer<'t>),
KwDefault(KwDefault<'t>),
KwDeviation(KwDeviation<'t>),
KwEnum(KwEnum<'t>),
KwExtension(KwExtension<'t>),
KwFeature(KwFeature<'t>),
KwFractionDigits(KwFractionDigits<'t>),
KwGrouping(KwGrouping<'t>),
KwIdentity(KwIdentity<'t>),
KwIfFeature(KwIfFeature<'t>),
KwImport(KwImport<'t>),
KwInclude(KwInclude<'t>),
KwKey(KwKey<'t>),
KwLeaf(KwLeaf<'t>),
KwLeafList(KwLeafList<'t>),
KwLength(KwLength<'t>),
KwList(KwList<'t>),
KwMandatory(KwMandatory<'t>),
KwModule(KwModule<'t>),
KwNamespace(KwNamespace<'t>),
KwNotification(KwNotification<'t>),
KwOrderedBy(KwOrderedBy<'t>),
KwPosition(KwPosition<'t>),
KwPrefix(KwPrefix<'t>),
KwRange(KwRange<'t>),
KwRefine(KwRefine<'t>),
KwRequireInstance(KwRequireInstance<'t>),
KwRevision(KwRevision<'t>),
KwRevisionDate(KwRevisionDate<'t>),
KwRpc(KwRpc<'t>),
KwStatus(KwStatus<'t>),
KwSubmodule(KwSubmodule<'t>),
KwType(KwType<'t>),
KwTypedef(KwTypedef<'t>),
KwUses(KwUses<'t>),
KwValue(KwValue<'t>),
KwYangVersion(KwYangVersion<'t>),
LBrace(LBrace<'t>),
LeafListStmt(LeafListStmt<'t>),
LeafListStmtList(Vec<LeafListStmtList<'t>>),
LeafListStmtListGroup(LeafListStmtListGroup<'t>),
LeafStmt(LeafStmt<'t>),
LeafStmtList(Vec<LeafStmtList<'t>>),
LeafStmtListGroup(LeafStmtListGroup<'t>),
LeafrefSpecification(LeafrefSpecification<'t>),
LengthStmt(LengthStmt<'t>),
LinkageStmts(LinkageStmts<'t>),
ListStmt(ListStmt<'t>),
ListStmtList(Vec<ListStmtList<'t>>),
ListStmtListGroup(ListStmtListGroup<'t>),
MandatoryArg(MandatoryArg<'t>),
MandatoryArgStr(MandatoryArgStr<'t>),
MandatoryStmt(MandatoryStmt<'t>),
MaxElementsStmt(MaxElementsStmt<'t>),
MetaStmts(MetaStmts<'t>),
MinElementsStmt(MinElementsStmt<'t>),
ModuleHeaderStmts(ModuleHeaderStmts<'t>),
ModuleStmt(ModuleStmt<'t>),
ModuleStmtList(Vec<ModuleStmtList<'t>>),
ModuleStmtList0(Vec<ModuleStmtList0<'t>>),
ModuleStmtList1(Vec<ModuleStmtList1<'t>>),
ModuleStmtList2(Vec<ModuleStmtList2<'t>>),
ModuleStmtList3(Vec<ModuleStmtList3<'t>>),
MustStmt(MustStmt<'t>),
MustStmtList(Vec<MustStmtList<'t>>),
MustStmtListGroup(MustStmtListGroup<'t>),
MustStmtSuffix(MustStmtSuffix<'t>),
NamespaceStmt(NamespaceStmt<'t>),
NonAscii(NonAscii<'t>),
NotificationStmt(NotificationStmt<'t>),
NotificationStmtList(Vec<NotificationStmtList<'t>>),
NotificationStmtListGroup(NotificationStmtListGroup<'t>),
OrderedByArg(OrderedByArg<'t>),
OrderedByArgStr(OrderedByArgStr<'t>),
OrderedByStmt(OrderedByStmt<'t>),
OrganizationStmt(OrganizationStmt<'t>),
OutputStmt(OutputStmt<'t>),
OutputStmtList(Vec<OutputStmtList<'t>>),
PathStmt(PathStmt<'t>),
PatternStmt(PatternStmt<'t>),
PositionStmt(PositionStmt<'t>),
PrefixStmt(PrefixStmt<'t>),
PresenceStmt(PresenceStmt<'t>),
RangeArg(RangeArg<'t>),
RangeArgOpt(Option<RangeArgOpt<'t>>),
RangeArgStr(RangeArgStr<'t>),
RangeBoundary(RangeBoundary<'t>),
RangePart(RangePart<'t>),
RangePartOpt(Option<RangePartOpt<'t>>),
RangeStmt(RangeStmt<'t>),
ReferenceStmt(ReferenceStmt<'t>),
RefineArg(RefineArg<'t>),
RefineArgStr(RefineArgStr<'t>),
RefineStmt(RefineStmt<'t>),
RefineStmtList(Vec<RefineStmtList<'t>>),
RefineStmtListGroup(RefineStmtListGroup<'t>),
RefineStmtSuffix(RefineStmtSuffix<'t>),
RequireInstanceArgStr(RequireInstanceArgStr<'t>),
RequireInstanceStmt(RequireInstanceStmt<'t>),
RevisionDateStmt(RevisionDateStmt<'t>),
RevisionStmt(RevisionStmt<'t>),
RevisionStmtList(Vec<RevisionStmtList<'t>>),
RevisionStmtListGroup(RevisionStmtListGroup<'t>),
RpcStmt(RpcStmt<'t>),
RpcStmtList(Vec<RpcStmtList<'t>>),
RpcStmtListGroup(RpcStmtListGroup<'t>),
RpcStmtSuffix(RpcStmtSuffix<'t>),
SQChar(SQChar<'t>),
SQEscapeSeqChar(SQEscapeSeqChar<'t>),
SQEscaped(SQEscaped<'t>),
SQNoEscape(SQNoEscape<'t>),
SQString(SQString<'t>),
SQStringList(Vec<SQStringList<'t>>),
SQUnescaped(SQUnescaped<'t>),
Semicolon(Semicolon<'t>),
ShortCaseStmt(ShortCaseStmt<'t>),
SingleQuotation(SingleQuotation<'t>),
StatusArg(StatusArg<'t>),
StatusArgStr(StatusArgStr<'t>),
StatusStmt(StatusStmt<'t>),
StringRestrictions(StringRestrictions<'t>),
SubmoduleHeaderStmts(SubmoduleHeaderStmts<'t>),
SubmoduleStmt(SubmoduleStmt<'t>),
SubmoduleStmtList(Vec<SubmoduleStmtList<'t>>),
SubmoduleStmtList0(Vec<SubmoduleStmtList0<'t>>),
SubmoduleStmtList1(Vec<SubmoduleStmtList1<'t>>),
SubmoduleStmtList2(Vec<SubmoduleStmtList2<'t>>),
SubmoduleStmtList3(Vec<SubmoduleStmtList3<'t>>),
TypeStmt(TypeStmt<'t>),
TypeStmtList(Vec<TypeStmtList<'t>>),
TypeStmtListGroup(TypeStmtListGroup<'t>),
TypeStmtSuffix(TypeStmtSuffix<'t>),
TypedefStmt(TypedefStmt<'t>),
TypedefStmtList(Vec<TypedefStmtList<'t>>),
TypedefStmtListGroup(TypedefStmtListGroup<'t>),
UnitsStmt(UnitsStmt<'t>),
UnknownStmt(UnknownStmt<'t>),
UnknownStmtList(Vec<UnknownStmtList<'t>>),
UnknownStmtListGroup(UnknownStmtListGroup<'t>),
UnknownStmtSuffix(UnknownStmtSuffix<'t>),
UriArg(UriArg<'t>),
UriStr(UriStr<'t>),
UsesStmt(UsesStmt<'t>),
UsesStmtList(Vec<UsesStmtList<'t>>),
UsesStmtListGroup(UsesStmtListGroup<'t>),
UsesStmtSuffix(UsesStmtSuffix<'t>),
ValueStmt(ValueStmt<'t>),
WhenStmt(WhenStmt<'t>),
WhenStmtList(Vec<WhenStmtList<'t>>),
WhenStmtListGroup(WhenStmtListGroup<'t>),
WhenStmtSuffix(WhenStmtSuffix<'t>),
Yang(Yang<'t>),
YangVersionArg(YangVersionArg<'t>),
YangVersionArgStr(YangVersionArgStr<'t>),
YangVersionStmt(YangVersionStmt<'t>),
Ystring(Ystring<'t>),
YstringOpt(Option<YstringOpt<'t>>),
}
#[allow(dead_code)]
pub struct YangGrammarAuto<'t, 'u>
where
't: 'u,
{
user_grammar: &'u mut dyn YangGrammarTrait<'t>,
item_stack: Vec<ASTType<'t>>,
}
impl<'t, 'u> YangGrammarAuto<'t, 'u> {
pub fn new(user_grammar: &'u mut dyn YangGrammarTrait<'t>) -> Self {
Self {
user_grammar,
item_stack: Vec::new(),
}
}
#[allow(dead_code)]
fn push(&mut self, item: ASTType<'t>, context: &str) {
trace!("push {context}: {item:?}");
self.item_stack.push(item)
}
#[allow(dead_code)]
fn pop(&mut self, context: &str) -> Option<ASTType<'t>> {
let item = self.item_stack.pop();
if let Some(ref item) = item {
trace!("pop {context}: {item:?}");
}
item
}
#[allow(dead_code)]
fn trace_item_stack(&self, context: &str) -> std::string::String {
format!(
"Item stack at {}:\n{}",
context,
self.item_stack
.iter()
.rev()
.map(|s| format!(" {s:?}"))
.collect::<Vec<std::string::String>>()
.join("\n")
)
}
#[parol_runtime::function_name::named]
fn l_brace(&mut self, l_brace: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let l_brace = l_brace.token()?.clone();
let l_brace_built = LBrace { l_brace };
self.user_grammar.l_brace(&l_brace_built)?;
self.push(ASTType::LBrace(l_brace_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn esc_n(&mut self, esc_n: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let esc_n = esc_n.token()?.clone();
let esc_n_built = EscN { esc_n };
self.user_grammar.esc_n(&esc_n_built)?;
self.push(ASTType::EscN(esc_n_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn esc_t(&mut self, esc_t: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let esc_t = esc_t.token()?.clone();
let esc_t_built = EscT { esc_t };
self.user_grammar.esc_t(&esc_t_built)?;
self.push(ASTType::EscT(esc_t_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_module(&mut self, kw_module: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_module = kw_module.token()?.clone();
let kw_module_built = KwModule { kw_module };
self.user_grammar.kw_module(&kw_module_built)?;
self.push(ASTType::KwModule(kw_module_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_submodule(&mut self, kw_submodule: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_submodule = kw_submodule.token()?.clone();
let kw_submodule_built = KwSubmodule { kw_submodule };
self.user_grammar.kw_submodule(&kw_submodule_built)?;
self.push(ASTType::KwSubmodule(kw_submodule_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_rpc(&mut self, kw_rpc: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_rpc = kw_rpc.token()?.clone();
let kw_rpc_built = KwRpc { kw_rpc };
self.user_grammar.kw_rpc(&kw_rpc_built)?;
self.push(ASTType::KwRpc(kw_rpc_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_extension(&mut self, kw_extension: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_extension = kw_extension.token()?.clone();
let kw_extension_built = KwExtension { kw_extension };
self.user_grammar.kw_extension(&kw_extension_built)?;
self.push(ASTType::KwExtension(kw_extension_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_argument(&mut self, kw_argument: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_argument = kw_argument.token()?.clone();
let kw_argument_built = KwArgument { kw_argument };
self.user_grammar.kw_argument(&kw_argument_built)?;
self.push(ASTType::KwArgument(kw_argument_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_feature(&mut self, kw_feature: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_feature = kw_feature.token()?.clone();
let kw_feature_built = KwFeature { kw_feature };
self.user_grammar.kw_feature(&kw_feature_built)?;
self.push(ASTType::KwFeature(kw_feature_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_typedef(&mut self, kw_typedef: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_typedef = kw_typedef.token()?.clone();
let kw_typedef_built = KwTypedef { kw_typedef };
self.user_grammar.kw_typedef(&kw_typedef_built)?;
self.push(ASTType::KwTypedef(kw_typedef_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_grouping(&mut self, kw_grouping: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_grouping = kw_grouping.token()?.clone();
let kw_grouping_built = KwGrouping { kw_grouping };
self.user_grammar.kw_grouping(&kw_grouping_built)?;
self.push(ASTType::KwGrouping(kw_grouping_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_identity(&mut self, kw_identity: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_identity = kw_identity.token()?.clone();
let kw_identity_built = KwIdentity { kw_identity };
self.user_grammar.kw_identity(&kw_identity_built)?;
self.push(ASTType::KwIdentity(kw_identity_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_anyxml(&mut self, kw_anyxml: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_anyxml = kw_anyxml.token()?.clone();
let kw_anyxml_built = KwAnyxml { kw_anyxml };
self.user_grammar.kw_anyxml(&kw_anyxml_built)?;
self.push(ASTType::KwAnyxml(kw_anyxml_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_anydata(&mut self, kw_anydata: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_anydata = kw_anydata.token()?.clone();
let kw_anydata_built = KwAnydata { kw_anydata };
self.user_grammar.kw_anydata(&kw_anydata_built)?;
self.push(ASTType::KwAnydata(kw_anydata_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_case(&mut self, kw_case: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_case = kw_case.token()?.clone();
let kw_case_built = KwCase { kw_case };
self.user_grammar.kw_case(&kw_case_built)?;
self.push(ASTType::KwCase(kw_case_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_container(&mut self, kw_container: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_container = kw_container.token()?.clone();
let kw_container_built = KwContainer { kw_container };
self.user_grammar.kw_container(&kw_container_built)?;
self.push(ASTType::KwContainer(kw_container_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_action(&mut self, kw_action: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_action = kw_action.token()?.clone();
let kw_action_built = KwAction { kw_action };
self.user_grammar.kw_action(&kw_action_built)?;
self.push(ASTType::KwAction(kw_action_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_notification(&mut self, kw_notification: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_notification = kw_notification.token()?.clone();
let kw_notification_built = KwNotification { kw_notification };
self.user_grammar.kw_notification(&kw_notification_built)?;
self.push(ASTType::KwNotification(kw_notification_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_leaf_list(&mut self, kw_leaf_list: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_leaf_list = kw_leaf_list.token()?.clone();
let kw_leaf_list_built = KwLeafList { kw_leaf_list };
self.user_grammar.kw_leaf_list(&kw_leaf_list_built)?;
self.push(ASTType::KwLeafList(kw_leaf_list_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_leaf(&mut self, kw_leaf: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_leaf = kw_leaf.token()?.clone();
let kw_leaf_built = KwLeaf { kw_leaf };
self.user_grammar.kw_leaf(&kw_leaf_built)?;
self.push(ASTType::KwLeaf(kw_leaf_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_list(&mut self, kw_list: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_list = kw_list.token()?.clone();
let kw_list_built = KwList { kw_list };
self.user_grammar.kw_list(&kw_list_built)?;
self.push(ASTType::KwList(kw_list_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_bit(&mut self, kw_bit: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_bit = kw_bit.token()?.clone();
let kw_bit_built = KwBit { kw_bit };
self.user_grammar.kw_bit(&kw_bit_built)?;
self.push(ASTType::KwBit(kw_bit_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_import(&mut self, kw_import: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_import = kw_import.token()?.clone();
let kw_import_built = KwImport { kw_import };
self.user_grammar.kw_import(&kw_import_built)?;
self.push(ASTType::KwImport(kw_import_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_include(&mut self, kw_include: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_include = kw_include.token()?.clone();
let kw_include_built = KwInclude { kw_include };
self.user_grammar.kw_include(&kw_include_built)?;
self.push(ASTType::KwInclude(kw_include_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_prefix(&mut self, kw_prefix: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_prefix = kw_prefix.token()?.clone();
let kw_prefix_built = KwPrefix { kw_prefix };
self.user_grammar.kw_prefix(&kw_prefix_built)?;
self.push(ASTType::KwPrefix(kw_prefix_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_belongs_to(&mut self, kw_belongs_to: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_belongs_to = kw_belongs_to.token()?.clone();
let kw_belongs_to_built = KwBelongsTo { kw_belongs_to };
self.user_grammar.kw_belongs_to(&kw_belongs_to_built)?;
self.push(ASTType::KwBelongsTo(kw_belongs_to_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_base(&mut self, kw_base: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_base = kw_base.token()?.clone();
let kw_base_built = KwBase { kw_base };
self.user_grammar.kw_base(&kw_base_built)?;
self.push(ASTType::KwBase(kw_base_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_choice(&mut self, kw_choice: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_choice = kw_choice.token()?.clone();
let kw_choice_built = KwChoice { kw_choice };
self.user_grammar.kw_choice(&kw_choice_built)?;
self.push(ASTType::KwChoice(kw_choice_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_uses(&mut self, kw_uses: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_uses = kw_uses.token()?.clone();
let kw_uses_built = KwUses { kw_uses };
self.user_grammar.kw_uses(&kw_uses_built)?;
self.push(ASTType::KwUses(kw_uses_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_type(&mut self, kw_type: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_type = kw_type.token()?.clone();
let kw_type_built = KwType { kw_type };
self.user_grammar.kw_type(&kw_type_built)?;
self.push(ASTType::KwType(kw_type_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_refine(&mut self, kw_refine: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_refine = kw_refine.token()?.clone();
let kw_refine_built = KwRefine { kw_refine };
self.user_grammar.kw_refine(&kw_refine_built)?;
self.push(ASTType::KwRefine(kw_refine_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_key(&mut self, kw_key: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_key = kw_key.token()?.clone();
let kw_key_built = KwKey { kw_key };
self.user_grammar.kw_key(&kw_key_built)?;
self.push(ASTType::KwKey(kw_key_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_deviation(&mut self, kw_deviation: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_deviation = kw_deviation.token()?.clone();
let kw_deviation_built = KwDeviation { kw_deviation };
self.user_grammar.kw_deviation(&kw_deviation_built)?;
self.push(ASTType::KwDeviation(kw_deviation_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_yang_version(&mut self, kw_yang_version: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_yang_version = kw_yang_version.token()?.clone();
let kw_yang_version_built = KwYangVersion { kw_yang_version };
self.user_grammar.kw_yang_version(&kw_yang_version_built)?;
self.push(ASTType::KwYangVersion(kw_yang_version_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_status(&mut self, kw_status: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_status = kw_status.token()?.clone();
let kw_status_built = KwStatus { kw_status };
self.user_grammar.kw_status(&kw_status_built)?;
self.push(ASTType::KwStatus(kw_status_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_if_feature(&mut self, kw_if_feature: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_if_feature = kw_if_feature.token()?.clone();
let kw_if_feature_built = KwIfFeature { kw_if_feature };
self.user_grammar.kw_if_feature(&kw_if_feature_built)?;
self.push(ASTType::KwIfFeature(kw_if_feature_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_mandatory(&mut self, kw_mandatory: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_mandatory = kw_mandatory.token()?.clone();
let kw_mandatory_built = KwMandatory { kw_mandatory };
self.user_grammar.kw_mandatory(&kw_mandatory_built)?;
self.push(ASTType::KwMandatory(kw_mandatory_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_config(&mut self, kw_config: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_config = kw_config.token()?.clone();
let kw_config_built = KwConfig { kw_config };
self.user_grammar.kw_config(&kw_config_built)?;
self.push(ASTType::KwConfig(kw_config_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_require_instance(&mut self, kw_require_instance: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_require_instance = kw_require_instance.token()?.clone();
let kw_require_instance_built = KwRequireInstance {
kw_require_instance,
};
self.user_grammar
.kw_require_instance(&kw_require_instance_built)?;
self.push(
ASTType::KwRequireInstance(kw_require_instance_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_ordered_by(&mut self, kw_ordered_by: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_ordered_by = kw_ordered_by.token()?.clone();
let kw_ordered_by_built = KwOrderedBy { kw_ordered_by };
self.user_grammar.kw_ordered_by(&kw_ordered_by_built)?;
self.push(ASTType::KwOrderedBy(kw_ordered_by_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_default(&mut self, kw_default: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_default = kw_default.token()?.clone();
let kw_default_built = KwDefault { kw_default };
self.user_grammar.kw_default(&kw_default_built)?;
self.push(ASTType::KwDefault(kw_default_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_fraction_digits(&mut self, kw_fraction_digits: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_fraction_digits = kw_fraction_digits.token()?.clone();
let kw_fraction_digits_built = KwFractionDigits { kw_fraction_digits };
self.user_grammar
.kw_fraction_digits(&kw_fraction_digits_built)?;
self.push(ASTType::KwFractionDigits(kw_fraction_digits_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_length(&mut self, kw_length: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_length = kw_length.token()?.clone();
let kw_length_built = KwLength { kw_length };
self.user_grammar.kw_length(&kw_length_built)?;
self.push(ASTType::KwLength(kw_length_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_range(&mut self, kw_range: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_range = kw_range.token()?.clone();
let kw_range_built = KwRange { kw_range };
self.user_grammar.kw_range(&kw_range_built)?;
self.push(ASTType::KwRange(kw_range_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_value(&mut self, kw_value: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_value = kw_value.token()?.clone();
let kw_value_built = KwValue { kw_value };
self.user_grammar.kw_value(&kw_value_built)?;
self.push(ASTType::KwValue(kw_value_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_position(&mut self, kw_position: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_position = kw_position.token()?.clone();
let kw_position_built = KwPosition { kw_position };
self.user_grammar.kw_position(&kw_position_built)?;
self.push(ASTType::KwPosition(kw_position_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_enum(&mut self, kw_enum: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_enum = kw_enum.token()?.clone();
let kw_enum_built = KwEnum { kw_enum };
self.user_grammar.kw_enum(&kw_enum_built)?;
self.push(ASTType::KwEnum(kw_enum_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_revision(&mut self, kw_revision: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_revision = kw_revision.token()?.clone();
let kw_revision_built = KwRevision { kw_revision };
self.user_grammar.kw_revision(&kw_revision_built)?;
self.push(ASTType::KwRevision(kw_revision_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_revision_date(&mut self, kw_revision_date: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_revision_date = kw_revision_date.token()?.clone();
let kw_revision_date_built = KwRevisionDate { kw_revision_date };
self.user_grammar
.kw_revision_date(&kw_revision_date_built)?;
self.push(ASTType::KwRevisionDate(kw_revision_date_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn kw_namespace(&mut self, kw_namespace: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let kw_namespace = kw_namespace.token()?.clone();
let kw_namespace_built = KwNamespace { kw_namespace };
self.user_grammar.kw_namespace(&kw_namespace_built)?;
self.push(ASTType::KwNamespace(kw_namespace_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn yang_0(&mut self, _module_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let module_stmt = pop_item!(self, module_stmt, ModuleStmt, context);
let yang_0_built = YangModuleStmt {
module_stmt: Box::new(module_stmt),
};
let yang_0_built = Yang::ModuleStmt(yang_0_built);
self.user_grammar.yang(&yang_0_built)?;
self.push(ASTType::Yang(yang_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn yang_1(&mut self, _submodule_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let submodule_stmt = pop_item!(self, submodule_stmt, SubmoduleStmt, context);
let yang_1_built = YangSubmoduleStmt {
submodule_stmt: Box::new(submodule_stmt),
};
let yang_1_built = Yang::SubmoduleStmt(yang_1_built);
self.user_grammar.yang(&yang_1_built)?;
self.push(ASTType::Yang(yang_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_stmt(
&mut self,
_kw_module: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_module_stmt_list: &ParseTreeType<'t>,
_module_stmt_list0: &ParseTreeType<'t>,
_module_stmt_list1: &ParseTreeType<'t>,
_module_stmt_list2: &ParseTreeType<'t>,
_module_stmt_list3: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let module_stmt_list3 =
pop_and_reverse_item!(self, module_stmt_list3, ModuleStmtList3, context);
let module_stmt_list2 =
pop_and_reverse_item!(self, module_stmt_list2, ModuleStmtList2, context);
let module_stmt_list1 =
pop_and_reverse_item!(self, module_stmt_list1, ModuleStmtList1, context);
let module_stmt_list0 =
pop_and_reverse_item!(self, module_stmt_list0, ModuleStmtList0, context);
let module_stmt_list =
pop_and_reverse_item!(self, module_stmt_list, ModuleStmtList, context);
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let module_stmt_built = ModuleStmt {
identifier_arg_str: Box::new(identifier_arg_str),
module_stmt_list,
module_stmt_list0,
module_stmt_list1,
module_stmt_list2,
module_stmt_list3,
};
self.user_grammar.module_stmt(&module_stmt_built)?;
self.push(ASTType::ModuleStmt(module_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_stmt_list3_0(
&mut self,
_body_stmts: &ParseTreeType<'t>,
_module_stmt_list3: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut module_stmt_list3 = pop_item!(self, module_stmt_list3, ModuleStmtList3, context);
let body_stmts = pop_item!(self, body_stmts, BodyStmts, context);
let module_stmt_list3_0_built = ModuleStmtList3 {
body_stmts: Box::new(body_stmts),
};
module_stmt_list3.push(module_stmt_list3_0_built);
self.push(ASTType::ModuleStmtList3(module_stmt_list3), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_stmt_list3_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let module_stmt_list3_1_built = Vec::new();
self.push(ASTType::ModuleStmtList3(module_stmt_list3_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_stmt_list2_0(
&mut self,
_revision_stmt: &ParseTreeType<'t>,
_module_stmt_list2: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut module_stmt_list2 = pop_item!(self, module_stmt_list2, ModuleStmtList2, context);
let revision_stmt = pop_item!(self, revision_stmt, RevisionStmt, context);
let module_stmt_list2_0_built = ModuleStmtList2 {
revision_stmt: Box::new(revision_stmt),
};
module_stmt_list2.push(module_stmt_list2_0_built);
self.push(ASTType::ModuleStmtList2(module_stmt_list2), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_stmt_list2_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let module_stmt_list2_1_built = Vec::new();
self.push(ASTType::ModuleStmtList2(module_stmt_list2_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_stmt_list1_0(
&mut self,
_meta_stmts: &ParseTreeType<'t>,
_module_stmt_list1: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut module_stmt_list1 = pop_item!(self, module_stmt_list1, ModuleStmtList1, context);
let meta_stmts = pop_item!(self, meta_stmts, MetaStmts, context);
let module_stmt_list1_0_built = ModuleStmtList1 {
meta_stmts: Box::new(meta_stmts),
};
module_stmt_list1.push(module_stmt_list1_0_built);
self.push(ASTType::ModuleStmtList1(module_stmt_list1), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_stmt_list1_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let module_stmt_list1_1_built = Vec::new();
self.push(ASTType::ModuleStmtList1(module_stmt_list1_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_stmt_list0_0(
&mut self,
_linkage_stmts: &ParseTreeType<'t>,
_module_stmt_list0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut module_stmt_list0 = pop_item!(self, module_stmt_list0, ModuleStmtList0, context);
let linkage_stmts = pop_item!(self, linkage_stmts, LinkageStmts, context);
let module_stmt_list0_0_built = ModuleStmtList0 {
linkage_stmts: Box::new(linkage_stmts),
};
module_stmt_list0.push(module_stmt_list0_0_built);
self.push(ASTType::ModuleStmtList0(module_stmt_list0), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_stmt_list0_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let module_stmt_list0_1_built = Vec::new();
self.push(ASTType::ModuleStmtList0(module_stmt_list0_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_stmt_list_0(
&mut self,
_module_header_stmts: &ParseTreeType<'t>,
_module_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut module_stmt_list = pop_item!(self, module_stmt_list, ModuleStmtList, context);
let module_header_stmts = pop_item!(self, module_header_stmts, ModuleHeaderStmts, context);
let module_stmt_list_0_built = ModuleStmtList {
module_header_stmts: Box::new(module_header_stmts),
};
module_stmt_list.push(module_stmt_list_0_built);
self.push(ASTType::ModuleStmtList(module_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let module_stmt_list_1_built = Vec::new();
self.push(ASTType::ModuleStmtList(module_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_stmt(
&mut self,
_kw_submodule: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_submodule_stmt_list: &ParseTreeType<'t>,
_submodule_stmt_list0: &ParseTreeType<'t>,
_submodule_stmt_list1: &ParseTreeType<'t>,
_submodule_stmt_list2: &ParseTreeType<'t>,
_submodule_stmt_list3: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let submodule_stmt_list3 =
pop_and_reverse_item!(self, submodule_stmt_list3, SubmoduleStmtList3, context);
let submodule_stmt_list2 =
pop_and_reverse_item!(self, submodule_stmt_list2, SubmoduleStmtList2, context);
let submodule_stmt_list1 =
pop_and_reverse_item!(self, submodule_stmt_list1, SubmoduleStmtList1, context);
let submodule_stmt_list0 =
pop_and_reverse_item!(self, submodule_stmt_list0, SubmoduleStmtList0, context);
let submodule_stmt_list =
pop_and_reverse_item!(self, submodule_stmt_list, SubmoduleStmtList, context);
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let submodule_stmt_built = SubmoduleStmt {
identifier_arg_str: Box::new(identifier_arg_str),
submodule_stmt_list,
submodule_stmt_list0,
submodule_stmt_list1,
submodule_stmt_list2,
submodule_stmt_list3,
};
self.user_grammar.submodule_stmt(&submodule_stmt_built)?;
self.push(ASTType::SubmoduleStmt(submodule_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_stmt_list3_0(
&mut self,
_body_stmts: &ParseTreeType<'t>,
_submodule_stmt_list3: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut submodule_stmt_list3 =
pop_item!(self, submodule_stmt_list3, SubmoduleStmtList3, context);
let body_stmts = pop_item!(self, body_stmts, BodyStmts, context);
let submodule_stmt_list3_0_built = SubmoduleStmtList3 {
body_stmts: Box::new(body_stmts),
};
submodule_stmt_list3.push(submodule_stmt_list3_0_built);
self.push(ASTType::SubmoduleStmtList3(submodule_stmt_list3), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_stmt_list3_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let submodule_stmt_list3_1_built = Vec::new();
self.push(
ASTType::SubmoduleStmtList3(submodule_stmt_list3_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_stmt_list2_0(
&mut self,
_revision_stmt: &ParseTreeType<'t>,
_submodule_stmt_list2: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut submodule_stmt_list2 =
pop_item!(self, submodule_stmt_list2, SubmoduleStmtList2, context);
let revision_stmt = pop_item!(self, revision_stmt, RevisionStmt, context);
let submodule_stmt_list2_0_built = SubmoduleStmtList2 {
revision_stmt: Box::new(revision_stmt),
};
submodule_stmt_list2.push(submodule_stmt_list2_0_built);
self.push(ASTType::SubmoduleStmtList2(submodule_stmt_list2), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_stmt_list2_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let submodule_stmt_list2_1_built = Vec::new();
self.push(
ASTType::SubmoduleStmtList2(submodule_stmt_list2_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_stmt_list1_0(
&mut self,
_meta_stmts: &ParseTreeType<'t>,
_submodule_stmt_list1: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut submodule_stmt_list1 =
pop_item!(self, submodule_stmt_list1, SubmoduleStmtList1, context);
let meta_stmts = pop_item!(self, meta_stmts, MetaStmts, context);
let submodule_stmt_list1_0_built = SubmoduleStmtList1 {
meta_stmts: Box::new(meta_stmts),
};
submodule_stmt_list1.push(submodule_stmt_list1_0_built);
self.push(ASTType::SubmoduleStmtList1(submodule_stmt_list1), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_stmt_list1_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let submodule_stmt_list1_1_built = Vec::new();
self.push(
ASTType::SubmoduleStmtList1(submodule_stmt_list1_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_stmt_list0_0(
&mut self,
_linkage_stmts: &ParseTreeType<'t>,
_submodule_stmt_list0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut submodule_stmt_list0 =
pop_item!(self, submodule_stmt_list0, SubmoduleStmtList0, context);
let linkage_stmts = pop_item!(self, linkage_stmts, LinkageStmts, context);
let submodule_stmt_list0_0_built = SubmoduleStmtList0 {
linkage_stmts: Box::new(linkage_stmts),
};
submodule_stmt_list0.push(submodule_stmt_list0_0_built);
self.push(ASTType::SubmoduleStmtList0(submodule_stmt_list0), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_stmt_list0_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let submodule_stmt_list0_1_built = Vec::new();
self.push(
ASTType::SubmoduleStmtList0(submodule_stmt_list0_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_stmt_list_0(
&mut self,
_submodule_header_stmts: &ParseTreeType<'t>,
_submodule_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut submodule_stmt_list =
pop_item!(self, submodule_stmt_list, SubmoduleStmtList, context);
let submodule_header_stmts =
pop_item!(self, submodule_header_stmts, SubmoduleHeaderStmts, context);
let submodule_stmt_list_0_built = SubmoduleStmtList {
submodule_header_stmts: Box::new(submodule_header_stmts),
};
submodule_stmt_list.push(submodule_stmt_list_0_built);
self.push(ASTType::SubmoduleStmtList(submodule_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let submodule_stmt_list_1_built = Vec::new();
self.push(
ASTType::SubmoduleStmtList(submodule_stmt_list_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_header_stmts_0(&mut self, _yang_version_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let yang_version_stmt = pop_item!(self, yang_version_stmt, YangVersionStmt, context);
let module_header_stmts_0_built = ModuleHeaderStmtsYangVersionStmt {
yang_version_stmt: Box::new(yang_version_stmt),
};
let module_header_stmts_0_built =
ModuleHeaderStmts::YangVersionStmt(module_header_stmts_0_built);
self.user_grammar
.module_header_stmts(&module_header_stmts_0_built)?;
self.push(
ASTType::ModuleHeaderStmts(module_header_stmts_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_header_stmts_1(&mut self, _namespace_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let namespace_stmt = pop_item!(self, namespace_stmt, NamespaceStmt, context);
let module_header_stmts_1_built = ModuleHeaderStmtsNamespaceStmt {
namespace_stmt: Box::new(namespace_stmt),
};
let module_header_stmts_1_built =
ModuleHeaderStmts::NamespaceStmt(module_header_stmts_1_built);
self.user_grammar
.module_header_stmts(&module_header_stmts_1_built)?;
self.push(
ASTType::ModuleHeaderStmts(module_header_stmts_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn module_header_stmts_2(&mut self, _prefix_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let prefix_stmt = pop_item!(self, prefix_stmt, PrefixStmt, context);
let module_header_stmts_2_built = ModuleHeaderStmtsPrefixStmt {
prefix_stmt: Box::new(prefix_stmt),
};
let module_header_stmts_2_built =
ModuleHeaderStmts::PrefixStmt(module_header_stmts_2_built);
self.user_grammar
.module_header_stmts(&module_header_stmts_2_built)?;
self.push(
ASTType::ModuleHeaderStmts(module_header_stmts_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_header_stmts_0(&mut self, _yang_version_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let yang_version_stmt = pop_item!(self, yang_version_stmt, YangVersionStmt, context);
let submodule_header_stmts_0_built = SubmoduleHeaderStmtsYangVersionStmt {
yang_version_stmt: Box::new(yang_version_stmt),
};
let submodule_header_stmts_0_built =
SubmoduleHeaderStmts::YangVersionStmt(submodule_header_stmts_0_built);
self.user_grammar
.submodule_header_stmts(&submodule_header_stmts_0_built)?;
self.push(
ASTType::SubmoduleHeaderStmts(submodule_header_stmts_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn submodule_header_stmts_1(&mut self, _belongs_to_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let belongs_to_stmt = pop_item!(self, belongs_to_stmt, BelongsToStmt, context);
let submodule_header_stmts_1_built = SubmoduleHeaderStmtsBelongsToStmt {
belongs_to_stmt: Box::new(belongs_to_stmt),
};
let submodule_header_stmts_1_built =
SubmoduleHeaderStmts::BelongsToStmt(submodule_header_stmts_1_built);
self.user_grammar
.submodule_header_stmts(&submodule_header_stmts_1_built)?;
self.push(
ASTType::SubmoduleHeaderStmts(submodule_header_stmts_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn meta_stmts_0(&mut self, _organization_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let organization_stmt = pop_item!(self, organization_stmt, OrganizationStmt, context);
let meta_stmts_0_built = MetaStmtsOrganizationStmt {
organization_stmt: Box::new(organization_stmt),
};
let meta_stmts_0_built = MetaStmts::OrganizationStmt(meta_stmts_0_built);
self.user_grammar.meta_stmts(&meta_stmts_0_built)?;
self.push(ASTType::MetaStmts(meta_stmts_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn meta_stmts_1(&mut self, _contact_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let contact_stmt = pop_item!(self, contact_stmt, ContactStmt, context);
let meta_stmts_1_built = MetaStmtsContactStmt {
contact_stmt: Box::new(contact_stmt),
};
let meta_stmts_1_built = MetaStmts::ContactStmt(meta_stmts_1_built);
self.user_grammar.meta_stmts(&meta_stmts_1_built)?;
self.push(ASTType::MetaStmts(meta_stmts_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn meta_stmts_2(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let meta_stmts_2_built = MetaStmtsDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let meta_stmts_2_built = MetaStmts::DescriptionStmt(meta_stmts_2_built);
self.user_grammar.meta_stmts(&meta_stmts_2_built)?;
self.push(ASTType::MetaStmts(meta_stmts_2_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn meta_stmts_3(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let meta_stmts_3_built = MetaStmtsReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let meta_stmts_3_built = MetaStmts::ReferenceStmt(meta_stmts_3_built);
self.user_grammar.meta_stmts(&meta_stmts_3_built)?;
self.push(ASTType::MetaStmts(meta_stmts_3_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn linkage_stmts_0(&mut self, _import_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let import_stmt = pop_item!(self, import_stmt, ImportStmt, context);
let linkage_stmts_0_built = LinkageStmtsImportStmt {
import_stmt: Box::new(import_stmt),
};
let linkage_stmts_0_built = LinkageStmts::ImportStmt(linkage_stmts_0_built);
self.user_grammar.linkage_stmts(&linkage_stmts_0_built)?;
self.push(ASTType::LinkageStmts(linkage_stmts_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn linkage_stmts_1(&mut self, _include_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let include_stmt = pop_item!(self, include_stmt, IncludeStmt, context);
let linkage_stmts_1_built = LinkageStmtsIncludeStmt {
include_stmt: Box::new(include_stmt),
};
let linkage_stmts_1_built = LinkageStmts::IncludeStmt(linkage_stmts_1_built);
self.user_grammar.linkage_stmts(&linkage_stmts_1_built)?;
self.push(ASTType::LinkageStmts(linkage_stmts_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn body_stmts_0(&mut self, _extension_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let extension_stmt = pop_item!(self, extension_stmt, ExtensionStmt, context);
let body_stmts_0_built = BodyStmtsExtensionStmt {
extension_stmt: Box::new(extension_stmt),
};
let body_stmts_0_built = BodyStmts::ExtensionStmt(body_stmts_0_built);
self.user_grammar.body_stmts(&body_stmts_0_built)?;
self.push(ASTType::BodyStmts(body_stmts_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn body_stmts_1(&mut self, _feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let feature_stmt = pop_item!(self, feature_stmt, FeatureStmt, context);
let body_stmts_1_built = BodyStmtsFeatureStmt {
feature_stmt: Box::new(feature_stmt),
};
let body_stmts_1_built = BodyStmts::FeatureStmt(body_stmts_1_built);
self.user_grammar.body_stmts(&body_stmts_1_built)?;
self.push(ASTType::BodyStmts(body_stmts_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn body_stmts_2(&mut self, _identity_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let identity_stmt = pop_item!(self, identity_stmt, IdentityStmt, context);
let body_stmts_2_built = BodyStmtsIdentityStmt {
identity_stmt: Box::new(identity_stmt),
};
let body_stmts_2_built = BodyStmts::IdentityStmt(body_stmts_2_built);
self.user_grammar.body_stmts(&body_stmts_2_built)?;
self.push(ASTType::BodyStmts(body_stmts_2_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn body_stmts_3(&mut self, _typedef_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let typedef_stmt = pop_item!(self, typedef_stmt, TypedefStmt, context);
let body_stmts_3_built = BodyStmtsTypedefStmt {
typedef_stmt: Box::new(typedef_stmt),
};
let body_stmts_3_built = BodyStmts::TypedefStmt(body_stmts_3_built);
self.user_grammar.body_stmts(&body_stmts_3_built)?;
self.push(ASTType::BodyStmts(body_stmts_3_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn body_stmts_4(&mut self, _grouping_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let grouping_stmt = pop_item!(self, grouping_stmt, GroupingStmt, context);
let body_stmts_4_built = BodyStmtsGroupingStmt {
grouping_stmt: Box::new(grouping_stmt),
};
let body_stmts_4_built = BodyStmts::GroupingStmt(body_stmts_4_built);
self.user_grammar.body_stmts(&body_stmts_4_built)?;
self.push(ASTType::BodyStmts(body_stmts_4_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn body_stmts_5(&mut self, _data_def_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let data_def_stmt = pop_item!(self, data_def_stmt, DataDefStmt, context);
let body_stmts_5_built = BodyStmtsDataDefStmt {
data_def_stmt: Box::new(data_def_stmt),
};
let body_stmts_5_built = BodyStmts::DataDefStmt(body_stmts_5_built);
self.user_grammar.body_stmts(&body_stmts_5_built)?;
self.push(ASTType::BodyStmts(body_stmts_5_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn body_stmts_6(&mut self, _augment_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let augment_stmt = pop_item!(self, augment_stmt, AugmentStmt, context);
let body_stmts_6_built = BodyStmtsAugmentStmt {
augment_stmt: Box::new(augment_stmt),
};
let body_stmts_6_built = BodyStmts::AugmentStmt(body_stmts_6_built);
self.user_grammar.body_stmts(&body_stmts_6_built)?;
self.push(ASTType::BodyStmts(body_stmts_6_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn body_stmts_7(&mut self, _rpc_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let rpc_stmt = pop_item!(self, rpc_stmt, RpcStmt, context);
let body_stmts_7_built = BodyStmtsRpcStmt {
rpc_stmt: Box::new(rpc_stmt),
};
let body_stmts_7_built = BodyStmts::RpcStmt(body_stmts_7_built);
self.user_grammar.body_stmts(&body_stmts_7_built)?;
self.push(ASTType::BodyStmts(body_stmts_7_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn body_stmts_8(&mut self, _notification_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let notification_stmt = pop_item!(self, notification_stmt, NotificationStmt, context);
let body_stmts_8_built = BodyStmtsNotificationStmt {
notification_stmt: Box::new(notification_stmt),
};
let body_stmts_8_built = BodyStmts::NotificationStmt(body_stmts_8_built);
self.user_grammar.body_stmts(&body_stmts_8_built)?;
self.push(ASTType::BodyStmts(body_stmts_8_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn body_stmts_9(&mut self, _deviation_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let deviation_stmt = pop_item!(self, deviation_stmt, DeviationStmt, context);
let body_stmts_9_built = BodyStmtsDeviationStmt {
deviation_stmt: Box::new(deviation_stmt),
};
let body_stmts_9_built = BodyStmts::DeviationStmt(body_stmts_9_built);
self.user_grammar.body_stmts(&body_stmts_9_built)?;
self.push(ASTType::BodyStmts(body_stmts_9_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn body_stmts_10(&mut self, _unknown_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let unknown_stmt = pop_item!(self, unknown_stmt, UnknownStmt, context);
let body_stmts_10_built = BodyStmtsUnknownStmt {
unknown_stmt: Box::new(unknown_stmt),
};
let body_stmts_10_built = BodyStmts::UnknownStmt(body_stmts_10_built);
self.user_grammar.body_stmts(&body_stmts_10_built)?;
self.push(ASTType::BodyStmts(body_stmts_10_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn data_def_stmt_0(&mut self, _container_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let container_stmt = pop_item!(self, container_stmt, ContainerStmt, context);
let data_def_stmt_0_built = DataDefStmtContainerStmt {
container_stmt: Box::new(container_stmt),
};
let data_def_stmt_0_built = DataDefStmt::ContainerStmt(data_def_stmt_0_built);
self.user_grammar.data_def_stmt(&data_def_stmt_0_built)?;
self.push(ASTType::DataDefStmt(data_def_stmt_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn data_def_stmt_1(&mut self, _leaf_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let leaf_stmt = pop_item!(self, leaf_stmt, LeafStmt, context);
let data_def_stmt_1_built = DataDefStmtLeafStmt {
leaf_stmt: Box::new(leaf_stmt),
};
let data_def_stmt_1_built = DataDefStmt::LeafStmt(data_def_stmt_1_built);
self.user_grammar.data_def_stmt(&data_def_stmt_1_built)?;
self.push(ASTType::DataDefStmt(data_def_stmt_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn data_def_stmt_2(&mut self, _leaf_list_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let leaf_list_stmt = pop_item!(self, leaf_list_stmt, LeafListStmt, context);
let data_def_stmt_2_built = DataDefStmtLeafListStmt {
leaf_list_stmt: Box::new(leaf_list_stmt),
};
let data_def_stmt_2_built = DataDefStmt::LeafListStmt(data_def_stmt_2_built);
self.user_grammar.data_def_stmt(&data_def_stmt_2_built)?;
self.push(ASTType::DataDefStmt(data_def_stmt_2_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn data_def_stmt_3(&mut self, _list_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let list_stmt = pop_item!(self, list_stmt, ListStmt, context);
let data_def_stmt_3_built = DataDefStmtListStmt {
list_stmt: Box::new(list_stmt),
};
let data_def_stmt_3_built = DataDefStmt::ListStmt(data_def_stmt_3_built);
self.user_grammar.data_def_stmt(&data_def_stmt_3_built)?;
self.push(ASTType::DataDefStmt(data_def_stmt_3_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn data_def_stmt_4(&mut self, _choice_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let choice_stmt = pop_item!(self, choice_stmt, ChoiceStmt, context);
let data_def_stmt_4_built = DataDefStmtChoiceStmt {
choice_stmt: Box::new(choice_stmt),
};
let data_def_stmt_4_built = DataDefStmt::ChoiceStmt(data_def_stmt_4_built);
self.user_grammar.data_def_stmt(&data_def_stmt_4_built)?;
self.push(ASTType::DataDefStmt(data_def_stmt_4_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn data_def_stmt_5(&mut self, _anydata_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let anydata_stmt = pop_item!(self, anydata_stmt, AnydataStmt, context);
let data_def_stmt_5_built = DataDefStmtAnydataStmt {
anydata_stmt: Box::new(anydata_stmt),
};
let data_def_stmt_5_built = DataDefStmt::AnydataStmt(data_def_stmt_5_built);
self.user_grammar.data_def_stmt(&data_def_stmt_5_built)?;
self.push(ASTType::DataDefStmt(data_def_stmt_5_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn data_def_stmt_6(&mut self, _anyxml_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let anyxml_stmt = pop_item!(self, anyxml_stmt, AnyxmlStmt, context);
let data_def_stmt_6_built = DataDefStmtAnyxmlStmt {
anyxml_stmt: Box::new(anyxml_stmt),
};
let data_def_stmt_6_built = DataDefStmt::AnyxmlStmt(data_def_stmt_6_built);
self.user_grammar.data_def_stmt(&data_def_stmt_6_built)?;
self.push(ASTType::DataDefStmt(data_def_stmt_6_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn data_def_stmt_7(&mut self, _uses_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let uses_stmt = pop_item!(self, uses_stmt, UsesStmt, context);
let data_def_stmt_7_built = DataDefStmtUsesStmt {
uses_stmt: Box::new(uses_stmt),
};
let data_def_stmt_7_built = DataDefStmt::UsesStmt(data_def_stmt_7_built);
self.user_grammar.data_def_stmt(&data_def_stmt_7_built)?;
self.push(ASTType::DataDefStmt(data_def_stmt_7_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn yang_version_stmt(
&mut self,
_kw_yang_version: &ParseTreeType<'t>,
_yang_version_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let yang_version_arg_str =
pop_item!(self, yang_version_arg_str, YangVersionArgStr, context);
self.pop(context);
let yang_version_stmt_built = YangVersionStmt {
yang_version_arg_str: Box::new(yang_version_arg_str),
};
self.user_grammar
.yang_version_stmt(&yang_version_stmt_built)?;
self.push(ASTType::YangVersionStmt(yang_version_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn yang_version_arg_str_0(&mut self, _yang_version_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let yang_version_arg = pop_item!(self, yang_version_arg, YangVersionArg, context);
let yang_version_arg_str_0_built = YangVersionArgStrYangVersionArg {
yang_version_arg: Box::new(yang_version_arg),
};
let yang_version_arg_str_0_built =
YangVersionArgStr::YangVersionArg(yang_version_arg_str_0_built);
self.user_grammar
.yang_version_arg_str(&yang_version_arg_str_0_built)?;
self.push(
ASTType::YangVersionArgStr(yang_version_arg_str_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn yang_version_arg_str_1(
&mut self,
_double_quotation: &ParseTreeType<'t>,
_yang_version_arg: &ParseTreeType<'t>,
_double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let yang_version_arg = pop_item!(self, yang_version_arg, YangVersionArg, context);
let yang_version_arg_str_1_built =
YangVersionArgStrDoubleQuotationYangVersionArgDoubleQuotation {
yang_version_arg: Box::new(yang_version_arg),
};
let yang_version_arg_str_1_built =
YangVersionArgStr::DoubleQuotationYangVersionArgDoubleQuotation(
yang_version_arg_str_1_built,
);
self.user_grammar
.yang_version_arg_str(&yang_version_arg_str_1_built)?;
self.push(
ASTType::YangVersionArgStr(yang_version_arg_str_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn deviation_stmt(
&mut self,
_kw_deviation: &ParseTreeType<'t>,
_absolute_schema_nodeid: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let semicolon = pop_item!(self, semicolon, Semicolon, context);
let absolute_schema_nodeid =
pop_item!(self, absolute_schema_nodeid, AbsoluteSchemaNodeid, context);
self.pop(context);
let deviation_stmt_built = DeviationStmt {
absolute_schema_nodeid: Box::new(absolute_schema_nodeid),
semicolon: Box::new(semicolon),
};
self.user_grammar.deviation_stmt(&deviation_stmt_built)?;
self.push(ASTType::DeviationStmt(deviation_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt(
&mut self,
_kw_rpc: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_rpc_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let rpc_stmt_suffix = pop_item!(self, rpc_stmt_suffix, RpcStmtSuffix, context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let rpc_stmt_built = RpcStmt {
identifier_arg_str: Box::new(identifier_arg_str),
rpc_stmt_suffix: Box::new(rpc_stmt_suffix),
};
self.user_grammar.rpc_stmt(&rpc_stmt_built)?;
self.push(ASTType::RpcStmt(rpc_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let semicolon = pop_item!(self, semicolon, Semicolon, context);
let rpc_stmt_suffix_0_built = RpcStmtSuffixSemicolon {
semicolon: Box::new(semicolon),
};
let rpc_stmt_suffix_0_built = RpcStmtSuffix::Semicolon(rpc_stmt_suffix_0_built);
self.push(ASTType::RpcStmtSuffix(rpc_stmt_suffix_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_rpc_stmt_list: &ParseTreeType<'t>,
r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let r_brace = r_brace.token()?.clone();
let rpc_stmt_list = pop_and_reverse_item!(self, rpc_stmt_list, RpcStmtList, context);
self.pop(context);
let rpc_stmt_suffix_1_built = RpcStmtSuffixLBraceRpcStmtListRBrace {
rpc_stmt_list,
r_brace,
};
let rpc_stmt_suffix_1_built =
RpcStmtSuffix::LBraceRpcStmtListRBrace(rpc_stmt_suffix_1_built);
self.push(ASTType::RpcStmtSuffix(rpc_stmt_suffix_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt_list_0(
&mut self,
_rpc_stmt_list_group: &ParseTreeType<'t>,
_rpc_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut rpc_stmt_list = pop_item!(self, rpc_stmt_list, RpcStmtList, context);
let rpc_stmt_list_group = pop_item!(self, rpc_stmt_list_group, RpcStmtListGroup, context);
let rpc_stmt_list_0_built = RpcStmtList {
rpc_stmt_list_group: Box::new(rpc_stmt_list_group),
};
rpc_stmt_list.push(rpc_stmt_list_0_built);
self.push(ASTType::RpcStmtList(rpc_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt_list_group_0(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let rpc_stmt_list_group_0_built = RpcStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let rpc_stmt_list_group_0_built =
RpcStmtListGroup::IfFeatureStmt(rpc_stmt_list_group_0_built);
self.push(
ASTType::RpcStmtListGroup(rpc_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt_list_group_1(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let rpc_stmt_list_group_1_built = RpcStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let rpc_stmt_list_group_1_built = RpcStmtListGroup::StatusStmt(rpc_stmt_list_group_1_built);
self.push(
ASTType::RpcStmtListGroup(rpc_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt_list_group_2(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let rpc_stmt_list_group_2_built = RpcStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let rpc_stmt_list_group_2_built =
RpcStmtListGroup::DescriptionStmt(rpc_stmt_list_group_2_built);
self.push(
ASTType::RpcStmtListGroup(rpc_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt_list_group_3(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let rpc_stmt_list_group_3_built = RpcStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let rpc_stmt_list_group_3_built =
RpcStmtListGroup::ReferenceStmt(rpc_stmt_list_group_3_built);
self.push(
ASTType::RpcStmtListGroup(rpc_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt_list_group_4(&mut self, _typedef_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let typedef_stmt = pop_item!(self, typedef_stmt, TypedefStmt, context);
let rpc_stmt_list_group_4_built = RpcStmtListGroupTypedefStmt {
typedef_stmt: Box::new(typedef_stmt),
};
let rpc_stmt_list_group_4_built =
RpcStmtListGroup::TypedefStmt(rpc_stmt_list_group_4_built);
self.push(
ASTType::RpcStmtListGroup(rpc_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt_list_group_5(&mut self, _grouping_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let grouping_stmt = pop_item!(self, grouping_stmt, GroupingStmt, context);
let rpc_stmt_list_group_5_built = RpcStmtListGroupGroupingStmt {
grouping_stmt: Box::new(grouping_stmt),
};
let rpc_stmt_list_group_5_built =
RpcStmtListGroup::GroupingStmt(rpc_stmt_list_group_5_built);
self.push(
ASTType::RpcStmtListGroup(rpc_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt_list_group_6(&mut self, _input_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let input_stmt = pop_item!(self, input_stmt, InputStmt, context);
let rpc_stmt_list_group_6_built = RpcStmtListGroupInputStmt {
input_stmt: Box::new(input_stmt),
};
let rpc_stmt_list_group_6_built = RpcStmtListGroup::InputStmt(rpc_stmt_list_group_6_built);
self.push(
ASTType::RpcStmtListGroup(rpc_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt_list_group_7(&mut self, _output_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let output_stmt = pop_item!(self, output_stmt, OutputStmt, context);
let rpc_stmt_list_group_7_built = RpcStmtListGroupOutputStmt {
output_stmt: Box::new(output_stmt),
};
let rpc_stmt_list_group_7_built = RpcStmtListGroup::OutputStmt(rpc_stmt_list_group_7_built);
self.push(
ASTType::RpcStmtListGroup(rpc_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn rpc_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let rpc_stmt_list_1_built = Vec::new();
self.push(ASTType::RpcStmtList(rpc_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn extension_stmt(
&mut self,
_kw_extension: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_extension_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let extension_stmt_suffix =
pop_item!(self, extension_stmt_suffix, ExtensionStmtSuffix, context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let extension_stmt_built = ExtensionStmt {
identifier_arg_str: Box::new(identifier_arg_str),
extension_stmt_suffix: Box::new(extension_stmt_suffix),
};
self.user_grammar.extension_stmt(&extension_stmt_built)?;
self.push(ASTType::ExtensionStmt(extension_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn extension_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let extension_stmt_suffix_0_built = ExtensionStmtSuffixSemicolon {};
let extension_stmt_suffix_0_built =
ExtensionStmtSuffix::Semicolon(extension_stmt_suffix_0_built);
self.push(
ASTType::ExtensionStmtSuffix(extension_stmt_suffix_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn extension_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_extension_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let extension_stmt_list =
pop_and_reverse_item!(self, extension_stmt_list, ExtensionStmtList, context);
self.pop(context);
let extension_stmt_suffix_1_built = ExtensionStmtSuffixLBraceExtensionStmtListRBrace {
extension_stmt_list,
};
let extension_stmt_suffix_1_built =
ExtensionStmtSuffix::LBraceExtensionStmtListRBrace(extension_stmt_suffix_1_built);
self.push(
ASTType::ExtensionStmtSuffix(extension_stmt_suffix_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn extension_stmt_list_0(
&mut self,
_extension_stmt_list_group: &ParseTreeType<'t>,
_extension_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut extension_stmt_list =
pop_item!(self, extension_stmt_list, ExtensionStmtList, context);
let extension_stmt_list_group = pop_item!(
self,
extension_stmt_list_group,
ExtensionStmtListGroup,
context
);
let extension_stmt_list_0_built = ExtensionStmtList {
extension_stmt_list_group: Box::new(extension_stmt_list_group),
};
extension_stmt_list.push(extension_stmt_list_0_built);
self.push(ASTType::ExtensionStmtList(extension_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn extension_stmt_list_group_0(&mut self, _argument_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let argument_stmt = pop_item!(self, argument_stmt, ArgumentStmt, context);
let extension_stmt_list_group_0_built = ExtensionStmtListGroupArgumentStmt {
argument_stmt: Box::new(argument_stmt),
};
let extension_stmt_list_group_0_built =
ExtensionStmtListGroup::ArgumentStmt(extension_stmt_list_group_0_built);
self.push(
ASTType::ExtensionStmtListGroup(extension_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn extension_stmt_list_group_1(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let extension_stmt_list_group_1_built = ExtensionStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let extension_stmt_list_group_1_built =
ExtensionStmtListGroup::StatusStmt(extension_stmt_list_group_1_built);
self.push(
ASTType::ExtensionStmtListGroup(extension_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn extension_stmt_list_group_2(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let extension_stmt_list_group_2_built = ExtensionStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let extension_stmt_list_group_2_built =
ExtensionStmtListGroup::DescriptionStmt(extension_stmt_list_group_2_built);
self.push(
ASTType::ExtensionStmtListGroup(extension_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn extension_stmt_list_group_3(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let extension_stmt_list_group_3_built = ExtensionStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let extension_stmt_list_group_3_built =
ExtensionStmtListGroup::ReferenceStmt(extension_stmt_list_group_3_built);
self.push(
ASTType::ExtensionStmtListGroup(extension_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn extension_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let extension_stmt_list_1_built = Vec::new();
self.push(
ASTType::ExtensionStmtList(extension_stmt_list_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn argument_stmt(
&mut self,
_kw_argument: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let argument_stmt_built = ArgumentStmt {
identifier_arg_str: Box::new(identifier_arg_str),
};
self.user_grammar.argument_stmt(&argument_stmt_built)?;
self.push(ASTType::ArgumentStmt(argument_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn feature_stmt(
&mut self,
_kw_feature: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_feature_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let feature_stmt_suffix = pop_item!(self, feature_stmt_suffix, FeatureStmtSuffix, context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let feature_stmt_built = FeatureStmt {
identifier_arg_str: Box::new(identifier_arg_str),
feature_stmt_suffix: Box::new(feature_stmt_suffix),
};
self.user_grammar.feature_stmt(&feature_stmt_built)?;
self.push(ASTType::FeatureStmt(feature_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn feature_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let feature_stmt_suffix_0_built = FeatureStmtSuffixSemicolon {};
let feature_stmt_suffix_0_built = FeatureStmtSuffix::Semicolon(feature_stmt_suffix_0_built);
self.push(
ASTType::FeatureStmtSuffix(feature_stmt_suffix_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn feature_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_feature_stmt_list: &ParseTreeType<'t>,
r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let r_brace = r_brace.token()?.clone();
let feature_stmt_list =
pop_and_reverse_item!(self, feature_stmt_list, FeatureStmtList, context);
self.pop(context);
let feature_stmt_suffix_1_built = FeatureStmtSuffixLBraceFeatureStmtListRBrace {
feature_stmt_list,
r_brace,
};
let feature_stmt_suffix_1_built =
FeatureStmtSuffix::LBraceFeatureStmtListRBrace(feature_stmt_suffix_1_built);
self.push(
ASTType::FeatureStmtSuffix(feature_stmt_suffix_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn feature_stmt_list_0(
&mut self,
_feature_stmt_list_group: &ParseTreeType<'t>,
_feature_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut feature_stmt_list = pop_item!(self, feature_stmt_list, FeatureStmtList, context);
let feature_stmt_list_group =
pop_item!(self, feature_stmt_list_group, FeatureStmtListGroup, context);
let feature_stmt_list_0_built = FeatureStmtList {
feature_stmt_list_group: Box::new(feature_stmt_list_group),
};
feature_stmt_list.push(feature_stmt_list_0_built);
self.push(ASTType::FeatureStmtList(feature_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn feature_stmt_list_group_0(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let feature_stmt_list_group_0_built = FeatureStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let feature_stmt_list_group_0_built =
FeatureStmtListGroup::IfFeatureStmt(feature_stmt_list_group_0_built);
self.push(
ASTType::FeatureStmtListGroup(feature_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn feature_stmt_list_group_1(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let feature_stmt_list_group_1_built = FeatureStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let feature_stmt_list_group_1_built =
FeatureStmtListGroup::StatusStmt(feature_stmt_list_group_1_built);
self.push(
ASTType::FeatureStmtListGroup(feature_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn feature_stmt_list_group_2(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let feature_stmt_list_group_2_built = FeatureStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let feature_stmt_list_group_2_built =
FeatureStmtListGroup::DescriptionStmt(feature_stmt_list_group_2_built);
self.push(
ASTType::FeatureStmtListGroup(feature_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn feature_stmt_list_group_3(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let feature_stmt_list_group_3_built = FeatureStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let feature_stmt_list_group_3_built =
FeatureStmtListGroup::ReferenceStmt(feature_stmt_list_group_3_built);
self.push(
ASTType::FeatureStmtListGroup(feature_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn feature_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let feature_stmt_list_1_built = Vec::new();
self.push(ASTType::FeatureStmtList(feature_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn typedef_stmt(
&mut self,
_kw_typedef: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_typedef_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let typedef_stmt_list =
pop_and_reverse_item!(self, typedef_stmt_list, TypedefStmtList, context);
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let typedef_stmt_built = TypedefStmt {
identifier_arg_str: Box::new(identifier_arg_str),
typedef_stmt_list,
};
self.user_grammar.typedef_stmt(&typedef_stmt_built)?;
self.push(ASTType::TypedefStmt(typedef_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn typedef_stmt_list_0(
&mut self,
_typedef_stmt_list_group: &ParseTreeType<'t>,
_typedef_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut typedef_stmt_list = pop_item!(self, typedef_stmt_list, TypedefStmtList, context);
let typedef_stmt_list_group =
pop_item!(self, typedef_stmt_list_group, TypedefStmtListGroup, context);
let typedef_stmt_list_0_built = TypedefStmtList {
typedef_stmt_list_group: Box::new(typedef_stmt_list_group),
};
typedef_stmt_list.push(typedef_stmt_list_0_built);
self.push(ASTType::TypedefStmtList(typedef_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn typedef_stmt_list_group_0(&mut self, _type_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let type_stmt = pop_item!(self, type_stmt, TypeStmt, context);
let typedef_stmt_list_group_0_built = TypedefStmtListGroupTypeStmt {
type_stmt: Box::new(type_stmt),
};
let typedef_stmt_list_group_0_built =
TypedefStmtListGroup::TypeStmt(typedef_stmt_list_group_0_built);
self.push(
ASTType::TypedefStmtListGroup(typedef_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn typedef_stmt_list_group_1(&mut self, _units_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let units_stmt = pop_item!(self, units_stmt, UnitsStmt, context);
let typedef_stmt_list_group_1_built = TypedefStmtListGroupUnitsStmt {
units_stmt: Box::new(units_stmt),
};
let typedef_stmt_list_group_1_built =
TypedefStmtListGroup::UnitsStmt(typedef_stmt_list_group_1_built);
self.push(
ASTType::TypedefStmtListGroup(typedef_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn typedef_stmt_list_group_2(&mut self, _default_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let default_stmt = pop_item!(self, default_stmt, DefaultStmt, context);
let typedef_stmt_list_group_2_built = TypedefStmtListGroupDefaultStmt {
default_stmt: Box::new(default_stmt),
};
let typedef_stmt_list_group_2_built =
TypedefStmtListGroup::DefaultStmt(typedef_stmt_list_group_2_built);
self.push(
ASTType::TypedefStmtListGroup(typedef_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn typedef_stmt_list_group_3(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let typedef_stmt_list_group_3_built = TypedefStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let typedef_stmt_list_group_3_built =
TypedefStmtListGroup::StatusStmt(typedef_stmt_list_group_3_built);
self.push(
ASTType::TypedefStmtListGroup(typedef_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn typedef_stmt_list_group_4(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let typedef_stmt_list_group_4_built = TypedefStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let typedef_stmt_list_group_4_built =
TypedefStmtListGroup::DescriptionStmt(typedef_stmt_list_group_4_built);
self.push(
ASTType::TypedefStmtListGroup(typedef_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn typedef_stmt_list_group_5(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let typedef_stmt_list_group_5_built = TypedefStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let typedef_stmt_list_group_5_built =
TypedefStmtListGroup::ReferenceStmt(typedef_stmt_list_group_5_built);
self.push(
ASTType::TypedefStmtListGroup(typedef_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn typedef_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let typedef_stmt_list_1_built = Vec::new();
self.push(ASTType::TypedefStmtList(typedef_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_stmt(
&mut self,
_augment: &ParseTreeType<'t>,
_augment_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_augment_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let augment_stmt_list =
pop_and_reverse_item!(self, augment_stmt_list, AugmentStmtList, context);
self.pop(context);
let augment_arg_str = pop_item!(self, augment_arg_str, AugmentArgStr, context);
let augment_stmt_built = AugmentStmt {
augment_arg_str: Box::new(augment_arg_str),
augment_stmt_list,
};
self.user_grammar.augment_stmt(&augment_stmt_built)?;
self.push(ASTType::AugmentStmt(augment_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_stmt_list_0(
&mut self,
_augment_stmt_list_group: &ParseTreeType<'t>,
_augment_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut augment_stmt_list = pop_item!(self, augment_stmt_list, AugmentStmtList, context);
let augment_stmt_list_group =
pop_item!(self, augment_stmt_list_group, AugmentStmtListGroup, context);
let augment_stmt_list_0_built = AugmentStmtList {
augment_stmt_list_group: Box::new(augment_stmt_list_group),
};
augment_stmt_list.push(augment_stmt_list_0_built);
self.push(ASTType::AugmentStmtList(augment_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_stmt_list_group_0(&mut self, _when_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let when_stmt = pop_item!(self, when_stmt, WhenStmt, context);
let augment_stmt_list_group_0_built = AugmentStmtListGroupWhenStmt {
when_stmt: Box::new(when_stmt),
};
let augment_stmt_list_group_0_built =
AugmentStmtListGroup::WhenStmt(augment_stmt_list_group_0_built);
self.push(
ASTType::AugmentStmtListGroup(augment_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_stmt_list_group_1(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let augment_stmt_list_group_1_built = AugmentStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let augment_stmt_list_group_1_built =
AugmentStmtListGroup::IfFeatureStmt(augment_stmt_list_group_1_built);
self.push(
ASTType::AugmentStmtListGroup(augment_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_stmt_list_group_2(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let augment_stmt_list_group_2_built = AugmentStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let augment_stmt_list_group_2_built =
AugmentStmtListGroup::StatusStmt(augment_stmt_list_group_2_built);
self.push(
ASTType::AugmentStmtListGroup(augment_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_stmt_list_group_3(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let augment_stmt_list_group_3_built = AugmentStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let augment_stmt_list_group_3_built =
AugmentStmtListGroup::DescriptionStmt(augment_stmt_list_group_3_built);
self.push(
ASTType::AugmentStmtListGroup(augment_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_stmt_list_group_4(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let augment_stmt_list_group_4_built = AugmentStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let augment_stmt_list_group_4_built =
AugmentStmtListGroup::ReferenceStmt(augment_stmt_list_group_4_built);
self.push(
ASTType::AugmentStmtListGroup(augment_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_stmt_list_group_5(&mut self, _data_def_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let data_def_stmt = pop_item!(self, data_def_stmt, DataDefStmt, context);
let augment_stmt_list_group_5_built = AugmentStmtListGroupDataDefStmt {
data_def_stmt: Box::new(data_def_stmt),
};
let augment_stmt_list_group_5_built =
AugmentStmtListGroup::DataDefStmt(augment_stmt_list_group_5_built);
self.push(
ASTType::AugmentStmtListGroup(augment_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_stmt_list_group_6(&mut self, _case_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let case_stmt = pop_item!(self, case_stmt, CaseStmt, context);
let augment_stmt_list_group_6_built = AugmentStmtListGroupCaseStmt {
case_stmt: Box::new(case_stmt),
};
let augment_stmt_list_group_6_built =
AugmentStmtListGroup::CaseStmt(augment_stmt_list_group_6_built);
self.push(
ASTType::AugmentStmtListGroup(augment_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_stmt_list_group_7(&mut self, _action_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let action_stmt = pop_item!(self, action_stmt, ActionStmt, context);
let augment_stmt_list_group_7_built = AugmentStmtListGroupActionStmt {
action_stmt: Box::new(action_stmt),
};
let augment_stmt_list_group_7_built =
AugmentStmtListGroup::ActionStmt(augment_stmt_list_group_7_built);
self.push(
ASTType::AugmentStmtListGroup(augment_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_stmt_list_group_8(&mut self, _notification_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let notification_stmt = pop_item!(self, notification_stmt, NotificationStmt, context);
let augment_stmt_list_group_8_built = AugmentStmtListGroupNotificationStmt {
notification_stmt: Box::new(notification_stmt),
};
let augment_stmt_list_group_8_built =
AugmentStmtListGroup::NotificationStmt(augment_stmt_list_group_8_built);
self.push(
ASTType::AugmentStmtListGroup(augment_stmt_list_group_8_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let augment_stmt_list_1_built = Vec::new();
self.push(ASTType::AugmentStmtList(augment_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn augment_arg_str(&mut self, _ystring: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let ystring = pop_item!(self, ystring, Ystring, context);
let augment_arg_str_built = AugmentArgStr {
ystring: Box::new(ystring),
};
self.user_grammar.augment_arg_str(&augment_arg_str_built)?;
self.push(ASTType::AugmentArgStr(augment_arg_str_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn when_stmt(
&mut self,
_when: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
_when_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let when_stmt_suffix = pop_item!(self, when_stmt_suffix, WhenStmtSuffix, context);
let ystring = pop_item!(self, ystring, Ystring, context);
let when_stmt_built = WhenStmt {
ystring: Box::new(ystring),
when_stmt_suffix: Box::new(when_stmt_suffix),
};
self.user_grammar.when_stmt(&when_stmt_built)?;
self.push(ASTType::WhenStmt(when_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn when_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let when_stmt_suffix_0_built = WhenStmtSuffixSemicolon {};
let when_stmt_suffix_0_built = WhenStmtSuffix::Semicolon(when_stmt_suffix_0_built);
self.push(ASTType::WhenStmtSuffix(when_stmt_suffix_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn when_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_when_stmt_list: &ParseTreeType<'t>,
r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let r_brace = r_brace.token()?.clone();
let when_stmt_list = pop_and_reverse_item!(self, when_stmt_list, WhenStmtList, context);
self.pop(context);
let when_stmt_suffix_1_built = WhenStmtSuffixLBraceWhenStmtListRBrace {
when_stmt_list,
r_brace,
};
let when_stmt_suffix_1_built =
WhenStmtSuffix::LBraceWhenStmtListRBrace(when_stmt_suffix_1_built);
self.push(ASTType::WhenStmtSuffix(when_stmt_suffix_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn when_stmt_list_0(
&mut self,
_when_stmt_list_group: &ParseTreeType<'t>,
_when_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut when_stmt_list = pop_item!(self, when_stmt_list, WhenStmtList, context);
let when_stmt_list_group =
pop_item!(self, when_stmt_list_group, WhenStmtListGroup, context);
let when_stmt_list_0_built = WhenStmtList {
when_stmt_list_group: Box::new(when_stmt_list_group),
};
when_stmt_list.push(when_stmt_list_0_built);
self.push(ASTType::WhenStmtList(when_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn when_stmt_list_group_0(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let when_stmt_list_group_0_built = WhenStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let when_stmt_list_group_0_built =
WhenStmtListGroup::DescriptionStmt(when_stmt_list_group_0_built);
self.push(
ASTType::WhenStmtListGroup(when_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn when_stmt_list_group_1(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let when_stmt_list_group_1_built = WhenStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let when_stmt_list_group_1_built =
WhenStmtListGroup::ReferenceStmt(when_stmt_list_group_1_built);
self.push(
ASTType::WhenStmtListGroup(when_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn when_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let when_stmt_list_1_built = Vec::new();
self.push(ASTType::WhenStmtList(when_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn grouping_stmt(
&mut self,
_kw_grouping: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_grouping_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let grouping_stmt_list =
pop_and_reverse_item!(self, grouping_stmt_list, GroupingStmtList, context);
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let grouping_stmt_built = GroupingStmt {
identifier_arg_str: Box::new(identifier_arg_str),
grouping_stmt_list,
};
self.user_grammar.grouping_stmt(&grouping_stmt_built)?;
self.push(ASTType::GroupingStmt(grouping_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn grouping_stmt_list_0(
&mut self,
_grouping_stmt_list_group: &ParseTreeType<'t>,
_grouping_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut grouping_stmt_list = pop_item!(self, grouping_stmt_list, GroupingStmtList, context);
let grouping_stmt_list_group = pop_item!(
self,
grouping_stmt_list_group,
GroupingStmtListGroup,
context
);
let grouping_stmt_list_0_built = GroupingStmtList {
grouping_stmt_list_group: Box::new(grouping_stmt_list_group),
};
grouping_stmt_list.push(grouping_stmt_list_0_built);
self.push(ASTType::GroupingStmtList(grouping_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn grouping_stmt_list_group_0(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let grouping_stmt_list_group_0_built = GroupingStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let grouping_stmt_list_group_0_built =
GroupingStmtListGroup::StatusStmt(grouping_stmt_list_group_0_built);
self.push(
ASTType::GroupingStmtListGroup(grouping_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn grouping_stmt_list_group_1(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let grouping_stmt_list_group_1_built = GroupingStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let grouping_stmt_list_group_1_built =
GroupingStmtListGroup::DescriptionStmt(grouping_stmt_list_group_1_built);
self.push(
ASTType::GroupingStmtListGroup(grouping_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn grouping_stmt_list_group_2(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let grouping_stmt_list_group_2_built = GroupingStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let grouping_stmt_list_group_2_built =
GroupingStmtListGroup::ReferenceStmt(grouping_stmt_list_group_2_built);
self.push(
ASTType::GroupingStmtListGroup(grouping_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn grouping_stmt_list_group_3(&mut self, _typedef_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let typedef_stmt = pop_item!(self, typedef_stmt, TypedefStmt, context);
let grouping_stmt_list_group_3_built = GroupingStmtListGroupTypedefStmt {
typedef_stmt: Box::new(typedef_stmt),
};
let grouping_stmt_list_group_3_built =
GroupingStmtListGroup::TypedefStmt(grouping_stmt_list_group_3_built);
self.push(
ASTType::GroupingStmtListGroup(grouping_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn grouping_stmt_list_group_4(&mut self, _grouping_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let grouping_stmt = pop_item!(self, grouping_stmt, GroupingStmt, context);
let grouping_stmt_list_group_4_built = GroupingStmtListGroupGroupingStmt {
grouping_stmt: Box::new(grouping_stmt),
};
let grouping_stmt_list_group_4_built =
GroupingStmtListGroup::GroupingStmt(grouping_stmt_list_group_4_built);
self.push(
ASTType::GroupingStmtListGroup(grouping_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn grouping_stmt_list_group_5(&mut self, _data_def_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let data_def_stmt = pop_item!(self, data_def_stmt, DataDefStmt, context);
let grouping_stmt_list_group_5_built = GroupingStmtListGroupDataDefStmt {
data_def_stmt: Box::new(data_def_stmt),
};
let grouping_stmt_list_group_5_built =
GroupingStmtListGroup::DataDefStmt(grouping_stmt_list_group_5_built);
self.push(
ASTType::GroupingStmtListGroup(grouping_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn grouping_stmt_list_group_6(&mut self, _action_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let action_stmt = pop_item!(self, action_stmt, ActionStmt, context);
let grouping_stmt_list_group_6_built = GroupingStmtListGroupActionStmt {
action_stmt: Box::new(action_stmt),
};
let grouping_stmt_list_group_6_built =
GroupingStmtListGroup::ActionStmt(grouping_stmt_list_group_6_built);
self.push(
ASTType::GroupingStmtListGroup(grouping_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn grouping_stmt_list_group_7(&mut self, _notification_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let notification_stmt = pop_item!(self, notification_stmt, NotificationStmt, context);
let grouping_stmt_list_group_7_built = GroupingStmtListGroupNotificationStmt {
notification_stmt: Box::new(notification_stmt),
};
let grouping_stmt_list_group_7_built =
GroupingStmtListGroup::NotificationStmt(grouping_stmt_list_group_7_built);
self.push(
ASTType::GroupingStmtListGroup(grouping_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn grouping_stmt_list_group_8(&mut self, _unknown_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let unknown_stmt = pop_item!(self, unknown_stmt, UnknownStmt, context);
let grouping_stmt_list_group_8_built = GroupingStmtListGroupUnknownStmt {
unknown_stmt: Box::new(unknown_stmt),
};
let grouping_stmt_list_group_8_built =
GroupingStmtListGroup::UnknownStmt(grouping_stmt_list_group_8_built);
self.push(
ASTType::GroupingStmtListGroup(grouping_stmt_list_group_8_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn grouping_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let grouping_stmt_list_1_built = Vec::new();
self.push(
ASTType::GroupingStmtList(grouping_stmt_list_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn identity_stmt(
&mut self,
_kw_identity: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_identity_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let identity_stmt_list =
pop_and_reverse_item!(self, identity_stmt_list, IdentityStmtList, context);
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let identity_stmt_built = IdentityStmt {
identifier_arg_str: Box::new(identifier_arg_str),
identity_stmt_list,
};
self.user_grammar.identity_stmt(&identity_stmt_built)?;
self.push(ASTType::IdentityStmt(identity_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn identity_stmt_list_0(
&mut self,
_identity_stmt_list_group: &ParseTreeType<'t>,
_identity_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut identity_stmt_list = pop_item!(self, identity_stmt_list, IdentityStmtList, context);
let identity_stmt_list_group = pop_item!(
self,
identity_stmt_list_group,
IdentityStmtListGroup,
context
);
let identity_stmt_list_0_built = IdentityStmtList {
identity_stmt_list_group: Box::new(identity_stmt_list_group),
};
identity_stmt_list.push(identity_stmt_list_0_built);
self.push(ASTType::IdentityStmtList(identity_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn identity_stmt_list_group_0(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let identity_stmt_list_group_0_built = IdentityStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let identity_stmt_list_group_0_built =
IdentityStmtListGroup::IfFeatureStmt(identity_stmt_list_group_0_built);
self.push(
ASTType::IdentityStmtListGroup(identity_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn identity_stmt_list_group_1(&mut self, _base_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let base_stmt = pop_item!(self, base_stmt, BaseStmt, context);
let identity_stmt_list_group_1_built = IdentityStmtListGroupBaseStmt {
base_stmt: Box::new(base_stmt),
};
let identity_stmt_list_group_1_built =
IdentityStmtListGroup::BaseStmt(identity_stmt_list_group_1_built);
self.push(
ASTType::IdentityStmtListGroup(identity_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn identity_stmt_list_group_2(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let identity_stmt_list_group_2_built = IdentityStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let identity_stmt_list_group_2_built =
IdentityStmtListGroup::DescriptionStmt(identity_stmt_list_group_2_built);
self.push(
ASTType::IdentityStmtListGroup(identity_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn identity_stmt_list_group_3(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let identity_stmt_list_group_3_built = IdentityStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let identity_stmt_list_group_3_built =
IdentityStmtListGroup::ReferenceStmt(identity_stmt_list_group_3_built);
self.push(
ASTType::IdentityStmtListGroup(identity_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn identity_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let identity_stmt_list_1_built = Vec::new();
self.push(
ASTType::IdentityStmtList(identity_stmt_list_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn base_stmt(
&mut self,
_kw_base: &ParseTreeType<'t>,
_identifier_ref_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let identifier_ref_arg_str =
pop_item!(self, identifier_ref_arg_str, IdentifierRefArgStr, context);
self.pop(context);
let base_stmt_built = BaseStmt {
identifier_ref_arg_str: Box::new(identifier_ref_arg_str),
};
self.user_grammar.base_stmt(&base_stmt_built)?;
self.push(ASTType::BaseStmt(base_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt(
&mut self,
_kw_anyxml: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_anyxml_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let anyxml_stmt_suffix = pop_item!(self, anyxml_stmt_suffix, AnyxmlStmtSuffix, context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let anyxml_stmt_built = AnyxmlStmt {
identifier_arg_str: Box::new(identifier_arg_str),
anyxml_stmt_suffix: Box::new(anyxml_stmt_suffix),
};
self.user_grammar.anyxml_stmt(&anyxml_stmt_built)?;
self.push(ASTType::AnyxmlStmt(anyxml_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let anyxml_stmt_suffix_0_built = AnyxmlStmtSuffixSemicolon {};
let anyxml_stmt_suffix_0_built = AnyxmlStmtSuffix::Semicolon(anyxml_stmt_suffix_0_built);
self.push(
ASTType::AnyxmlStmtSuffix(anyxml_stmt_suffix_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_anyxml_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let anyxml_stmt_list =
pop_and_reverse_item!(self, anyxml_stmt_list, AnyxmlStmtList, context);
self.pop(context);
let anyxml_stmt_suffix_1_built =
AnyxmlStmtSuffixLBraceAnyxmlStmtListRBrace { anyxml_stmt_list };
let anyxml_stmt_suffix_1_built =
AnyxmlStmtSuffix::LBraceAnyxmlStmtListRBrace(anyxml_stmt_suffix_1_built);
self.push(
ASTType::AnyxmlStmtSuffix(anyxml_stmt_suffix_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt_list_0(
&mut self,
_anyxml_stmt_list_group: &ParseTreeType<'t>,
_anyxml_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut anyxml_stmt_list = pop_item!(self, anyxml_stmt_list, AnyxmlStmtList, context);
let anyxml_stmt_list_group =
pop_item!(self, anyxml_stmt_list_group, AnyxmlStmtListGroup, context);
let anyxml_stmt_list_0_built = AnyxmlStmtList {
anyxml_stmt_list_group: Box::new(anyxml_stmt_list_group),
};
anyxml_stmt_list.push(anyxml_stmt_list_0_built);
self.push(ASTType::AnyxmlStmtList(anyxml_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt_list_group_0(&mut self, _when_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let when_stmt = pop_item!(self, when_stmt, WhenStmt, context);
let anyxml_stmt_list_group_0_built = AnyxmlStmtListGroupWhenStmt {
when_stmt: Box::new(when_stmt),
};
let anyxml_stmt_list_group_0_built =
AnyxmlStmtListGroup::WhenStmt(anyxml_stmt_list_group_0_built);
self.push(
ASTType::AnyxmlStmtListGroup(anyxml_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt_list_group_1(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let anyxml_stmt_list_group_1_built = AnyxmlStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let anyxml_stmt_list_group_1_built =
AnyxmlStmtListGroup::IfFeatureStmt(anyxml_stmt_list_group_1_built);
self.push(
ASTType::AnyxmlStmtListGroup(anyxml_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt_list_group_2(&mut self, _must_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let must_stmt = pop_item!(self, must_stmt, MustStmt, context);
let anyxml_stmt_list_group_2_built = AnyxmlStmtListGroupMustStmt {
must_stmt: Box::new(must_stmt),
};
let anyxml_stmt_list_group_2_built =
AnyxmlStmtListGroup::MustStmt(anyxml_stmt_list_group_2_built);
self.push(
ASTType::AnyxmlStmtListGroup(anyxml_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt_list_group_3(&mut self, _config_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let config_stmt = pop_item!(self, config_stmt, ConfigStmt, context);
let anyxml_stmt_list_group_3_built = AnyxmlStmtListGroupConfigStmt {
config_stmt: Box::new(config_stmt),
};
let anyxml_stmt_list_group_3_built =
AnyxmlStmtListGroup::ConfigStmt(anyxml_stmt_list_group_3_built);
self.push(
ASTType::AnyxmlStmtListGroup(anyxml_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt_list_group_4(&mut self, _mandatory_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mandatory_stmt = pop_item!(self, mandatory_stmt, MandatoryStmt, context);
let anyxml_stmt_list_group_4_built = AnyxmlStmtListGroupMandatoryStmt {
mandatory_stmt: Box::new(mandatory_stmt),
};
let anyxml_stmt_list_group_4_built =
AnyxmlStmtListGroup::MandatoryStmt(anyxml_stmt_list_group_4_built);
self.push(
ASTType::AnyxmlStmtListGroup(anyxml_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt_list_group_5(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let anyxml_stmt_list_group_5_built = AnyxmlStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let anyxml_stmt_list_group_5_built =
AnyxmlStmtListGroup::StatusStmt(anyxml_stmt_list_group_5_built);
self.push(
ASTType::AnyxmlStmtListGroup(anyxml_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt_list_group_6(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let anyxml_stmt_list_group_6_built = AnyxmlStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let anyxml_stmt_list_group_6_built =
AnyxmlStmtListGroup::DescriptionStmt(anyxml_stmt_list_group_6_built);
self.push(
ASTType::AnyxmlStmtListGroup(anyxml_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt_list_group_7(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let anyxml_stmt_list_group_7_built = AnyxmlStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let anyxml_stmt_list_group_7_built =
AnyxmlStmtListGroup::ReferenceStmt(anyxml_stmt_list_group_7_built);
self.push(
ASTType::AnyxmlStmtListGroup(anyxml_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anyxml_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let anyxml_stmt_list_1_built = Vec::new();
self.push(ASTType::AnyxmlStmtList(anyxml_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt(
&mut self,
_kw_choice: &ParseTreeType<'t>,
_identifier_ref_arg_str: &ParseTreeType<'t>,
_choice_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let choice_stmt_suffix = pop_item!(self, choice_stmt_suffix, ChoiceStmtSuffix, context);
let identifier_ref_arg_str =
pop_item!(self, identifier_ref_arg_str, IdentifierRefArgStr, context);
self.pop(context);
let choice_stmt_built = ChoiceStmt {
identifier_ref_arg_str: Box::new(identifier_ref_arg_str),
choice_stmt_suffix: Box::new(choice_stmt_suffix),
};
self.user_grammar.choice_stmt(&choice_stmt_built)?;
self.push(ASTType::ChoiceStmt(choice_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let choice_stmt_suffix_0_built = ChoiceStmtSuffixSemicolon {};
let choice_stmt_suffix_0_built = ChoiceStmtSuffix::Semicolon(choice_stmt_suffix_0_built);
self.push(
ASTType::ChoiceStmtSuffix(choice_stmt_suffix_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_choice_stmt_list: &ParseTreeType<'t>,
r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let r_brace = r_brace.token()?.clone();
let choice_stmt_list =
pop_and_reverse_item!(self, choice_stmt_list, ChoiceStmtList, context);
self.pop(context);
let choice_stmt_suffix_1_built = ChoiceStmtSuffixLBraceChoiceStmtListRBrace {
choice_stmt_list,
r_brace,
};
let choice_stmt_suffix_1_built =
ChoiceStmtSuffix::LBraceChoiceStmtListRBrace(choice_stmt_suffix_1_built);
self.push(
ASTType::ChoiceStmtSuffix(choice_stmt_suffix_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_list_0(
&mut self,
_choice_stmt_list_group: &ParseTreeType<'t>,
_choice_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut choice_stmt_list = pop_item!(self, choice_stmt_list, ChoiceStmtList, context);
let choice_stmt_list_group =
pop_item!(self, choice_stmt_list_group, ChoiceStmtListGroup, context);
let choice_stmt_list_0_built = ChoiceStmtList {
choice_stmt_list_group: Box::new(choice_stmt_list_group),
};
choice_stmt_list.push(choice_stmt_list_0_built);
self.push(ASTType::ChoiceStmtList(choice_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_list_group_0(&mut self, _when_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let when_stmt = pop_item!(self, when_stmt, WhenStmt, context);
let choice_stmt_list_group_0_built = ChoiceStmtListGroupWhenStmt {
when_stmt: Box::new(when_stmt),
};
let choice_stmt_list_group_0_built =
ChoiceStmtListGroup::WhenStmt(choice_stmt_list_group_0_built);
self.push(
ASTType::ChoiceStmtListGroup(choice_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_list_group_1(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let choice_stmt_list_group_1_built = ChoiceStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let choice_stmt_list_group_1_built =
ChoiceStmtListGroup::IfFeatureStmt(choice_stmt_list_group_1_built);
self.push(
ASTType::ChoiceStmtListGroup(choice_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_list_group_2(&mut self, _default_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let default_stmt = pop_item!(self, default_stmt, DefaultStmt, context);
let choice_stmt_list_group_2_built = ChoiceStmtListGroupDefaultStmt {
default_stmt: Box::new(default_stmt),
};
let choice_stmt_list_group_2_built =
ChoiceStmtListGroup::DefaultStmt(choice_stmt_list_group_2_built);
self.push(
ASTType::ChoiceStmtListGroup(choice_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_list_group_3(&mut self, _config_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let config_stmt = pop_item!(self, config_stmt, ConfigStmt, context);
let choice_stmt_list_group_3_built = ChoiceStmtListGroupConfigStmt {
config_stmt: Box::new(config_stmt),
};
let choice_stmt_list_group_3_built =
ChoiceStmtListGroup::ConfigStmt(choice_stmt_list_group_3_built);
self.push(
ASTType::ChoiceStmtListGroup(choice_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_list_group_4(&mut self, _mandatory_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mandatory_stmt = pop_item!(self, mandatory_stmt, MandatoryStmt, context);
let choice_stmt_list_group_4_built = ChoiceStmtListGroupMandatoryStmt {
mandatory_stmt: Box::new(mandatory_stmt),
};
let choice_stmt_list_group_4_built =
ChoiceStmtListGroup::MandatoryStmt(choice_stmt_list_group_4_built);
self.push(
ASTType::ChoiceStmtListGroup(choice_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_list_group_5(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let choice_stmt_list_group_5_built = ChoiceStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let choice_stmt_list_group_5_built =
ChoiceStmtListGroup::StatusStmt(choice_stmt_list_group_5_built);
self.push(
ASTType::ChoiceStmtListGroup(choice_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_list_group_6(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let choice_stmt_list_group_6_built = ChoiceStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let choice_stmt_list_group_6_built =
ChoiceStmtListGroup::DescriptionStmt(choice_stmt_list_group_6_built);
self.push(
ASTType::ChoiceStmtListGroup(choice_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_list_group_7(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let choice_stmt_list_group_7_built = ChoiceStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let choice_stmt_list_group_7_built =
ChoiceStmtListGroup::ReferenceStmt(choice_stmt_list_group_7_built);
self.push(
ASTType::ChoiceStmtListGroup(choice_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_list_group_8(&mut self, _short_case_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let short_case_stmt = pop_item!(self, short_case_stmt, ShortCaseStmt, context);
let choice_stmt_list_group_8_built = ChoiceStmtListGroupShortCaseStmt {
short_case_stmt: Box::new(short_case_stmt),
};
let choice_stmt_list_group_8_built =
ChoiceStmtListGroup::ShortCaseStmt(choice_stmt_list_group_8_built);
self.push(
ASTType::ChoiceStmtListGroup(choice_stmt_list_group_8_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_list_group_9(&mut self, _case_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let case_stmt = pop_item!(self, case_stmt, CaseStmt, context);
let choice_stmt_list_group_9_built = ChoiceStmtListGroupCaseStmt {
case_stmt: Box::new(case_stmt),
};
let choice_stmt_list_group_9_built =
ChoiceStmtListGroup::CaseStmt(choice_stmt_list_group_9_built);
self.push(
ASTType::ChoiceStmtListGroup(choice_stmt_list_group_9_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn choice_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let choice_stmt_list_1_built = Vec::new();
self.push(ASTType::ChoiceStmtList(choice_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn short_case_stmt_0(&mut self, _choice_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let choice_stmt = pop_item!(self, choice_stmt, ChoiceStmt, context);
let short_case_stmt_0_built = ShortCaseStmtChoiceStmt {
choice_stmt: Box::new(choice_stmt),
};
let short_case_stmt_0_built = ShortCaseStmt::ChoiceStmt(short_case_stmt_0_built);
self.user_grammar
.short_case_stmt(&short_case_stmt_0_built)?;
self.push(ASTType::ShortCaseStmt(short_case_stmt_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn short_case_stmt_1(&mut self, _container_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let container_stmt = pop_item!(self, container_stmt, ContainerStmt, context);
let short_case_stmt_1_built = ShortCaseStmtContainerStmt {
container_stmt: Box::new(container_stmt),
};
let short_case_stmt_1_built = ShortCaseStmt::ContainerStmt(short_case_stmt_1_built);
self.user_grammar
.short_case_stmt(&short_case_stmt_1_built)?;
self.push(ASTType::ShortCaseStmt(short_case_stmt_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn short_case_stmt_2(&mut self, _leaf_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let leaf_stmt = pop_item!(self, leaf_stmt, LeafStmt, context);
let short_case_stmt_2_built = ShortCaseStmtLeafStmt {
leaf_stmt: Box::new(leaf_stmt),
};
let short_case_stmt_2_built = ShortCaseStmt::LeafStmt(short_case_stmt_2_built);
self.user_grammar
.short_case_stmt(&short_case_stmt_2_built)?;
self.push(ASTType::ShortCaseStmt(short_case_stmt_2_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn short_case_stmt_3(&mut self, _leaf_list_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let leaf_list_stmt = pop_item!(self, leaf_list_stmt, LeafListStmt, context);
let short_case_stmt_3_built = ShortCaseStmtLeafListStmt {
leaf_list_stmt: Box::new(leaf_list_stmt),
};
let short_case_stmt_3_built = ShortCaseStmt::LeafListStmt(short_case_stmt_3_built);
self.user_grammar
.short_case_stmt(&short_case_stmt_3_built)?;
self.push(ASTType::ShortCaseStmt(short_case_stmt_3_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn short_case_stmt_4(&mut self, _list_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let list_stmt = pop_item!(self, list_stmt, ListStmt, context);
let short_case_stmt_4_built = ShortCaseStmtListStmt {
list_stmt: Box::new(list_stmt),
};
let short_case_stmt_4_built = ShortCaseStmt::ListStmt(short_case_stmt_4_built);
self.user_grammar
.short_case_stmt(&short_case_stmt_4_built)?;
self.push(ASTType::ShortCaseStmt(short_case_stmt_4_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn short_case_stmt_5(&mut self, _anydata_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let anydata_stmt = pop_item!(self, anydata_stmt, AnydataStmt, context);
let short_case_stmt_5_built = ShortCaseStmtAnydataStmt {
anydata_stmt: Box::new(anydata_stmt),
};
let short_case_stmt_5_built = ShortCaseStmt::AnydataStmt(short_case_stmt_5_built);
self.user_grammar
.short_case_stmt(&short_case_stmt_5_built)?;
self.push(ASTType::ShortCaseStmt(short_case_stmt_5_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn short_case_stmt_6(&mut self, _anyxml_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let anyxml_stmt = pop_item!(self, anyxml_stmt, AnyxmlStmt, context);
let short_case_stmt_6_built = ShortCaseStmtAnyxmlStmt {
anyxml_stmt: Box::new(anyxml_stmt),
};
let short_case_stmt_6_built = ShortCaseStmt::AnyxmlStmt(short_case_stmt_6_built);
self.user_grammar
.short_case_stmt(&short_case_stmt_6_built)?;
self.push(ASTType::ShortCaseStmt(short_case_stmt_6_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt(
&mut self,
_kw_anydata: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_anydata_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let anydata_stmt_suffix = pop_item!(self, anydata_stmt_suffix, AnydataStmtSuffix, context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let anydata_stmt_built = AnydataStmt {
identifier_arg_str: Box::new(identifier_arg_str),
anydata_stmt_suffix: Box::new(anydata_stmt_suffix),
};
self.user_grammar.anydata_stmt(&anydata_stmt_built)?;
self.push(ASTType::AnydataStmt(anydata_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let anydata_stmt_suffix_0_built = AnydataStmtSuffixSemicolon {};
let anydata_stmt_suffix_0_built = AnydataStmtSuffix::Semicolon(anydata_stmt_suffix_0_built);
self.push(
ASTType::AnydataStmtSuffix(anydata_stmt_suffix_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_anydata_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let anydata_stmt_list =
pop_and_reverse_item!(self, anydata_stmt_list, AnydataStmtList, context);
self.pop(context);
let anydata_stmt_suffix_1_built =
AnydataStmtSuffixLBraceAnydataStmtListRBrace { anydata_stmt_list };
let anydata_stmt_suffix_1_built =
AnydataStmtSuffix::LBraceAnydataStmtListRBrace(anydata_stmt_suffix_1_built);
self.push(
ASTType::AnydataStmtSuffix(anydata_stmt_suffix_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt_list_0(
&mut self,
_anydata_stmt_list_group: &ParseTreeType<'t>,
_anydata_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut anydata_stmt_list = pop_item!(self, anydata_stmt_list, AnydataStmtList, context);
let anydata_stmt_list_group =
pop_item!(self, anydata_stmt_list_group, AnydataStmtListGroup, context);
let anydata_stmt_list_0_built = AnydataStmtList {
anydata_stmt_list_group: Box::new(anydata_stmt_list_group),
};
anydata_stmt_list.push(anydata_stmt_list_0_built);
self.push(ASTType::AnydataStmtList(anydata_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt_list_group_0(&mut self, _when_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let when_stmt = pop_item!(self, when_stmt, WhenStmt, context);
let anydata_stmt_list_group_0_built = AnydataStmtListGroupWhenStmt {
when_stmt: Box::new(when_stmt),
};
let anydata_stmt_list_group_0_built =
AnydataStmtListGroup::WhenStmt(anydata_stmt_list_group_0_built);
self.push(
ASTType::AnydataStmtListGroup(anydata_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt_list_group_1(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let anydata_stmt_list_group_1_built = AnydataStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let anydata_stmt_list_group_1_built =
AnydataStmtListGroup::IfFeatureStmt(anydata_stmt_list_group_1_built);
self.push(
ASTType::AnydataStmtListGroup(anydata_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt_list_group_2(&mut self, _must_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let must_stmt = pop_item!(self, must_stmt, MustStmt, context);
let anydata_stmt_list_group_2_built = AnydataStmtListGroupMustStmt {
must_stmt: Box::new(must_stmt),
};
let anydata_stmt_list_group_2_built =
AnydataStmtListGroup::MustStmt(anydata_stmt_list_group_2_built);
self.push(
ASTType::AnydataStmtListGroup(anydata_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt_list_group_3(&mut self, _config_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let config_stmt = pop_item!(self, config_stmt, ConfigStmt, context);
let anydata_stmt_list_group_3_built = AnydataStmtListGroupConfigStmt {
config_stmt: Box::new(config_stmt),
};
let anydata_stmt_list_group_3_built =
AnydataStmtListGroup::ConfigStmt(anydata_stmt_list_group_3_built);
self.push(
ASTType::AnydataStmtListGroup(anydata_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt_list_group_4(&mut self, _mandatory_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mandatory_stmt = pop_item!(self, mandatory_stmt, MandatoryStmt, context);
let anydata_stmt_list_group_4_built = AnydataStmtListGroupMandatoryStmt {
mandatory_stmt: Box::new(mandatory_stmt),
};
let anydata_stmt_list_group_4_built =
AnydataStmtListGroup::MandatoryStmt(anydata_stmt_list_group_4_built);
self.push(
ASTType::AnydataStmtListGroup(anydata_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt_list_group_5(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let anydata_stmt_list_group_5_built = AnydataStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let anydata_stmt_list_group_5_built =
AnydataStmtListGroup::StatusStmt(anydata_stmt_list_group_5_built);
self.push(
ASTType::AnydataStmtListGroup(anydata_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt_list_group_6(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let anydata_stmt_list_group_6_built = AnydataStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let anydata_stmt_list_group_6_built =
AnydataStmtListGroup::DescriptionStmt(anydata_stmt_list_group_6_built);
self.push(
ASTType::AnydataStmtListGroup(anydata_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt_list_group_7(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let anydata_stmt_list_group_7_built = AnydataStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let anydata_stmt_list_group_7_built =
AnydataStmtListGroup::ReferenceStmt(anydata_stmt_list_group_7_built);
self.push(
ASTType::AnydataStmtListGroup(anydata_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn anydata_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let anydata_stmt_list_1_built = Vec::new();
self.push(ASTType::AnydataStmtList(anydata_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn case_stmt(
&mut self,
_kw_case: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_case_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let case_stmt_suffix = pop_item!(self, case_stmt_suffix, CaseStmtSuffix, context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let case_stmt_built = CaseStmt {
identifier_arg_str: Box::new(identifier_arg_str),
case_stmt_suffix: Box::new(case_stmt_suffix),
};
self.user_grammar.case_stmt(&case_stmt_built)?;
self.push(ASTType::CaseStmt(case_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn case_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let case_stmt_suffix_0_built = CaseStmtSuffixSemicolon {};
let case_stmt_suffix_0_built = CaseStmtSuffix::Semicolon(case_stmt_suffix_0_built);
self.push(ASTType::CaseStmtSuffix(case_stmt_suffix_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn case_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_case_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let case_stmt_list = pop_and_reverse_item!(self, case_stmt_list, CaseStmtList, context);
self.pop(context);
let case_stmt_suffix_1_built = CaseStmtSuffixLBraceCaseStmtListRBrace { case_stmt_list };
let case_stmt_suffix_1_built =
CaseStmtSuffix::LBraceCaseStmtListRBrace(case_stmt_suffix_1_built);
self.push(ASTType::CaseStmtSuffix(case_stmt_suffix_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn case_stmt_list_0(
&mut self,
_case_stmt_list_group: &ParseTreeType<'t>,
_case_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut case_stmt_list = pop_item!(self, case_stmt_list, CaseStmtList, context);
let case_stmt_list_group =
pop_item!(self, case_stmt_list_group, CaseStmtListGroup, context);
let case_stmt_list_0_built = CaseStmtList {
case_stmt_list_group: Box::new(case_stmt_list_group),
};
case_stmt_list.push(case_stmt_list_0_built);
self.push(ASTType::CaseStmtList(case_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn case_stmt_list_group_0(&mut self, _when_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let when_stmt = pop_item!(self, when_stmt, WhenStmt, context);
let case_stmt_list_group_0_built = CaseStmtListGroupWhenStmt {
when_stmt: Box::new(when_stmt),
};
let case_stmt_list_group_0_built =
CaseStmtListGroup::WhenStmt(case_stmt_list_group_0_built);
self.push(
ASTType::CaseStmtListGroup(case_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn case_stmt_list_group_1(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let case_stmt_list_group_1_built = CaseStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let case_stmt_list_group_1_built =
CaseStmtListGroup::IfFeatureStmt(case_stmt_list_group_1_built);
self.push(
ASTType::CaseStmtListGroup(case_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn case_stmt_list_group_2(&mut self, _data_def_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let data_def_stmt = pop_item!(self, data_def_stmt, DataDefStmt, context);
let case_stmt_list_group_2_built = CaseStmtListGroupDataDefStmt {
data_def_stmt: Box::new(data_def_stmt),
};
let case_stmt_list_group_2_built =
CaseStmtListGroup::DataDefStmt(case_stmt_list_group_2_built);
self.push(
ASTType::CaseStmtListGroup(case_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn case_stmt_list_group_3(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let case_stmt_list_group_3_built = CaseStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let case_stmt_list_group_3_built =
CaseStmtListGroup::DescriptionStmt(case_stmt_list_group_3_built);
self.push(
ASTType::CaseStmtListGroup(case_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn case_stmt_list_group_4(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let case_stmt_list_group_4_built = CaseStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let case_stmt_list_group_4_built =
CaseStmtListGroup::ReferenceStmt(case_stmt_list_group_4_built);
self.push(
ASTType::CaseStmtListGroup(case_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn case_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let case_stmt_list_1_built = Vec::new();
self.push(ASTType::CaseStmtList(case_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn status_stmt(
&mut self,
_kw_status: &ParseTreeType<'t>,
_status_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let status_arg_str = pop_item!(self, status_arg_str, StatusArgStr, context);
self.pop(context);
let status_stmt_built = StatusStmt {
status_arg_str: Box::new(status_arg_str),
};
self.user_grammar.status_stmt(&status_stmt_built)?;
self.push(ASTType::StatusStmt(status_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn status_arg_str_0(&mut self, _status_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_arg = pop_item!(self, status_arg, StatusArg, context);
let status_arg_str_0_built = StatusArgStrStatusArg {
status_arg: Box::new(status_arg),
};
let status_arg_str_0_built = StatusArgStr::StatusArg(status_arg_str_0_built);
self.user_grammar.status_arg_str(&status_arg_str_0_built)?;
self.push(ASTType::StatusArgStr(status_arg_str_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn status_arg_str_1(
&mut self,
_double_quotation: &ParseTreeType<'t>,
_status_arg: &ParseTreeType<'t>,
_double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_arg = pop_item!(self, status_arg, StatusArg, context);
let status_arg_str_1_built = StatusArgStrDoubleQuotationStatusArgDoubleQuotation {
status_arg: Box::new(status_arg),
};
let status_arg_str_1_built =
StatusArgStr::DoubleQuotationStatusArgDoubleQuotation(status_arg_str_1_built);
self.user_grammar.status_arg_str(&status_arg_str_1_built)?;
self.push(ASTType::StatusArgStr(status_arg_str_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn status_arg(&mut self, status_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_arg = status_arg.token()?.clone();
let status_arg_built = StatusArg { status_arg };
self.user_grammar.status_arg(&status_arg_built)?;
self.push(ASTType::StatusArg(status_arg_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt(
&mut self,
_kw_container: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_container_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let container_stmt_suffix =
pop_item!(self, container_stmt_suffix, ContainerStmtSuffix, context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let container_stmt_built = ContainerStmt {
identifier_arg_str: Box::new(identifier_arg_str),
container_stmt_suffix: Box::new(container_stmt_suffix),
};
self.user_grammar.container_stmt(&container_stmt_built)?;
self.push(ASTType::ContainerStmt(container_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let container_stmt_suffix_0_built = ContainerStmtSuffixSemicolon {};
let container_stmt_suffix_0_built =
ContainerStmtSuffix::Semicolon(container_stmt_suffix_0_built);
self.push(
ASTType::ContainerStmtSuffix(container_stmt_suffix_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_container_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let container_stmt_list =
pop_and_reverse_item!(self, container_stmt_list, ContainerStmtList, context);
self.pop(context);
let container_stmt_suffix_1_built = ContainerStmtSuffixLBraceContainerStmtListRBrace {
container_stmt_list,
};
let container_stmt_suffix_1_built =
ContainerStmtSuffix::LBraceContainerStmtListRBrace(container_stmt_suffix_1_built);
self.push(
ASTType::ContainerStmtSuffix(container_stmt_suffix_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_0(
&mut self,
_container_stmt_list_group: &ParseTreeType<'t>,
_container_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut container_stmt_list =
pop_item!(self, container_stmt_list, ContainerStmtList, context);
let container_stmt_list_group = pop_item!(
self,
container_stmt_list_group,
ContainerStmtListGroup,
context
);
let container_stmt_list_0_built = ContainerStmtList {
container_stmt_list_group: Box::new(container_stmt_list_group),
};
container_stmt_list.push(container_stmt_list_0_built);
self.push(ASTType::ContainerStmtList(container_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_group_0(&mut self, _when_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let when_stmt = pop_item!(self, when_stmt, WhenStmt, context);
let container_stmt_list_group_0_built = ContainerStmtListGroupWhenStmt {
when_stmt: Box::new(when_stmt),
};
let container_stmt_list_group_0_built =
ContainerStmtListGroup::WhenStmt(container_stmt_list_group_0_built);
self.push(
ASTType::ContainerStmtListGroup(container_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_group_1(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let container_stmt_list_group_1_built = ContainerStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let container_stmt_list_group_1_built =
ContainerStmtListGroup::IfFeatureStmt(container_stmt_list_group_1_built);
self.push(
ASTType::ContainerStmtListGroup(container_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_group_2(&mut self, _must_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let must_stmt = pop_item!(self, must_stmt, MustStmt, context);
let container_stmt_list_group_2_built = ContainerStmtListGroupMustStmt {
must_stmt: Box::new(must_stmt),
};
let container_stmt_list_group_2_built =
ContainerStmtListGroup::MustStmt(container_stmt_list_group_2_built);
self.push(
ASTType::ContainerStmtListGroup(container_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_group_3(&mut self, _presence_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let presence_stmt = pop_item!(self, presence_stmt, PresenceStmt, context);
let container_stmt_list_group_3_built = ContainerStmtListGroupPresenceStmt {
presence_stmt: Box::new(presence_stmt),
};
let container_stmt_list_group_3_built =
ContainerStmtListGroup::PresenceStmt(container_stmt_list_group_3_built);
self.push(
ASTType::ContainerStmtListGroup(container_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_group_4(&mut self, _config_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let config_stmt = pop_item!(self, config_stmt, ConfigStmt, context);
let container_stmt_list_group_4_built = ContainerStmtListGroupConfigStmt {
config_stmt: Box::new(config_stmt),
};
let container_stmt_list_group_4_built =
ContainerStmtListGroup::ConfigStmt(container_stmt_list_group_4_built);
self.push(
ASTType::ContainerStmtListGroup(container_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_group_5(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let container_stmt_list_group_5_built = ContainerStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let container_stmt_list_group_5_built =
ContainerStmtListGroup::StatusStmt(container_stmt_list_group_5_built);
self.push(
ASTType::ContainerStmtListGroup(container_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_group_6(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let container_stmt_list_group_6_built = ContainerStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let container_stmt_list_group_6_built =
ContainerStmtListGroup::DescriptionStmt(container_stmt_list_group_6_built);
self.push(
ASTType::ContainerStmtListGroup(container_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_group_7(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let container_stmt_list_group_7_built = ContainerStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let container_stmt_list_group_7_built =
ContainerStmtListGroup::ReferenceStmt(container_stmt_list_group_7_built);
self.push(
ASTType::ContainerStmtListGroup(container_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_group_8(&mut self, _data_def_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let data_def_stmt = pop_item!(self, data_def_stmt, DataDefStmt, context);
let container_stmt_list_group_8_built = ContainerStmtListGroupDataDefStmt {
data_def_stmt: Box::new(data_def_stmt),
};
let container_stmt_list_group_8_built =
ContainerStmtListGroup::DataDefStmt(container_stmt_list_group_8_built);
self.push(
ASTType::ContainerStmtListGroup(container_stmt_list_group_8_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_group_9(&mut self, _action_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let action_stmt = pop_item!(self, action_stmt, ActionStmt, context);
let container_stmt_list_group_9_built = ContainerStmtListGroupActionStmt {
action_stmt: Box::new(action_stmt),
};
let container_stmt_list_group_9_built =
ContainerStmtListGroup::ActionStmt(container_stmt_list_group_9_built);
self.push(
ASTType::ContainerStmtListGroup(container_stmt_list_group_9_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_group_10(
&mut self,
_notification_stmt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let notification_stmt = pop_item!(self, notification_stmt, NotificationStmt, context);
let container_stmt_list_group_10_built = ContainerStmtListGroupNotificationStmt {
notification_stmt: Box::new(notification_stmt),
};
let container_stmt_list_group_10_built =
ContainerStmtListGroup::NotificationStmt(container_stmt_list_group_10_built);
self.push(
ASTType::ContainerStmtListGroup(container_stmt_list_group_10_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_group_11(&mut self, _unknown_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let unknown_stmt = pop_item!(self, unknown_stmt, UnknownStmt, context);
let container_stmt_list_group_11_built = ContainerStmtListGroupUnknownStmt {
unknown_stmt: Box::new(unknown_stmt),
};
let container_stmt_list_group_11_built =
ContainerStmtListGroup::UnknownStmt(container_stmt_list_group_11_built);
self.push(
ASTType::ContainerStmtListGroup(container_stmt_list_group_11_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn container_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let container_stmt_list_1_built = Vec::new();
self.push(
ASTType::ContainerStmtList(container_stmt_list_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn action_stmt(
&mut self,
_kw_action: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_action_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let action_stmt_suffix = pop_item!(self, action_stmt_suffix, ActionStmtSuffix, context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let action_stmt_built = ActionStmt {
identifier_arg_str: Box::new(identifier_arg_str),
action_stmt_suffix: Box::new(action_stmt_suffix),
};
self.user_grammar.action_stmt(&action_stmt_built)?;
self.push(ASTType::ActionStmt(action_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn action_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let semicolon = pop_item!(self, semicolon, Semicolon, context);
let action_stmt_suffix_0_built = ActionStmtSuffixSemicolon {
semicolon: Box::new(semicolon),
};
let action_stmt_suffix_0_built = ActionStmtSuffix::Semicolon(action_stmt_suffix_0_built);
self.push(
ASTType::ActionStmtSuffix(action_stmt_suffix_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn action_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_action_stmt_list: &ParseTreeType<'t>,
r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let r_brace = r_brace.token()?.clone();
let action_stmt_list =
pop_and_reverse_item!(self, action_stmt_list, ActionStmtList, context);
self.pop(context);
let action_stmt_suffix_1_built = ActionStmtSuffixLBraceActionStmtListRBrace {
action_stmt_list,
r_brace,
};
let action_stmt_suffix_1_built =
ActionStmtSuffix::LBraceActionStmtListRBrace(action_stmt_suffix_1_built);
self.push(
ASTType::ActionStmtSuffix(action_stmt_suffix_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn action_stmt_list_0(
&mut self,
_action_stmt_list_group: &ParseTreeType<'t>,
_action_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut action_stmt_list = pop_item!(self, action_stmt_list, ActionStmtList, context);
let action_stmt_list_group =
pop_item!(self, action_stmt_list_group, ActionStmtListGroup, context);
let action_stmt_list_0_built = ActionStmtList {
action_stmt_list_group: Box::new(action_stmt_list_group),
};
action_stmt_list.push(action_stmt_list_0_built);
self.push(ASTType::ActionStmtList(action_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn action_stmt_list_group_0(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let action_stmt_list_group_0_built = ActionStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let action_stmt_list_group_0_built =
ActionStmtListGroup::IfFeatureStmt(action_stmt_list_group_0_built);
self.push(
ASTType::ActionStmtListGroup(action_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn action_stmt_list_group_1(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let action_stmt_list_group_1_built = ActionStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let action_stmt_list_group_1_built =
ActionStmtListGroup::StatusStmt(action_stmt_list_group_1_built);
self.push(
ASTType::ActionStmtListGroup(action_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn action_stmt_list_group_2(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let action_stmt_list_group_2_built = ActionStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let action_stmt_list_group_2_built =
ActionStmtListGroup::DescriptionStmt(action_stmt_list_group_2_built);
self.push(
ASTType::ActionStmtListGroup(action_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn action_stmt_list_group_3(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let action_stmt_list_group_3_built = ActionStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let action_stmt_list_group_3_built =
ActionStmtListGroup::ReferenceStmt(action_stmt_list_group_3_built);
self.push(
ASTType::ActionStmtListGroup(action_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn action_stmt_list_group_4(&mut self, _input_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let input_stmt = pop_item!(self, input_stmt, InputStmt, context);
let action_stmt_list_group_4_built = ActionStmtListGroupInputStmt {
input_stmt: Box::new(input_stmt),
};
let action_stmt_list_group_4_built =
ActionStmtListGroup::InputStmt(action_stmt_list_group_4_built);
self.push(
ASTType::ActionStmtListGroup(action_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn action_stmt_list_group_5(&mut self, _output_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let output_stmt = pop_item!(self, output_stmt, OutputStmt, context);
let action_stmt_list_group_5_built = ActionStmtListGroupOutputStmt {
output_stmt: Box::new(output_stmt),
};
let action_stmt_list_group_5_built =
ActionStmtListGroup::OutputStmt(action_stmt_list_group_5_built);
self.push(
ASTType::ActionStmtListGroup(action_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn action_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let action_stmt_list_1_built = Vec::new();
self.push(ASTType::ActionStmtList(action_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn input_stmt(
&mut self,
input: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_input_stmt_list: &ParseTreeType<'t>,
r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let input = input.token()?.clone();
let r_brace = r_brace.token()?.clone();
let input_stmt_list = pop_and_reverse_item!(self, input_stmt_list, InputStmtList, context);
self.pop(context);
let input_stmt_built = InputStmt {
input,
input_stmt_list,
r_brace,
};
self.user_grammar.input_stmt(&input_stmt_built)?;
self.push(ASTType::InputStmt(input_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn input_stmt_list_0(
&mut self,
_data_def_stmt: &ParseTreeType<'t>,
_input_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut input_stmt_list = pop_item!(self, input_stmt_list, InputStmtList, context);
let data_def_stmt = pop_item!(self, data_def_stmt, DataDefStmt, context);
let input_stmt_list_0_built = InputStmtList {
data_def_stmt: Box::new(data_def_stmt),
};
input_stmt_list.push(input_stmt_list_0_built);
self.push(ASTType::InputStmtList(input_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn input_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let input_stmt_list_1_built = Vec::new();
self.push(ASTType::InputStmtList(input_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn output_stmt(
&mut self,
output: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_output_stmt_list: &ParseTreeType<'t>,
r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let output = output.token()?.clone();
let r_brace = r_brace.token()?.clone();
let output_stmt_list =
pop_and_reverse_item!(self, output_stmt_list, OutputStmtList, context);
self.pop(context);
let output_stmt_built = OutputStmt {
output,
output_stmt_list,
r_brace,
};
self.user_grammar.output_stmt(&output_stmt_built)?;
self.push(ASTType::OutputStmt(output_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn output_stmt_list_0(
&mut self,
_data_def_stmt: &ParseTreeType<'t>,
_output_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut output_stmt_list = pop_item!(self, output_stmt_list, OutputStmtList, context);
let data_def_stmt = pop_item!(self, data_def_stmt, DataDefStmt, context);
let output_stmt_list_0_built = OutputStmtList {
data_def_stmt: Box::new(data_def_stmt),
};
output_stmt_list.push(output_stmt_list_0_built);
self.push(ASTType::OutputStmtList(output_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn output_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let output_stmt_list_1_built = Vec::new();
self.push(ASTType::OutputStmtList(output_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn notification_stmt(
&mut self,
_kw_notification: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_notification_stmt_list: &ParseTreeType<'t>,
r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let r_brace = r_brace.token()?.clone();
let notification_stmt_list =
pop_and_reverse_item!(self, notification_stmt_list, NotificationStmtList, context);
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let notification_stmt_built = NotificationStmt {
identifier_arg_str: Box::new(identifier_arg_str),
notification_stmt_list,
r_brace,
};
self.user_grammar
.notification_stmt(¬ification_stmt_built)?;
self.push(ASTType::NotificationStmt(notification_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn notification_stmt_list_0(
&mut self,
_notification_stmt_list_group: &ParseTreeType<'t>,
_notification_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut notification_stmt_list =
pop_item!(self, notification_stmt_list, NotificationStmtList, context);
let notification_stmt_list_group = pop_item!(
self,
notification_stmt_list_group,
NotificationStmtListGroup,
context
);
let notification_stmt_list_0_built = NotificationStmtList {
notification_stmt_list_group: Box::new(notification_stmt_list_group),
};
notification_stmt_list.push(notification_stmt_list_0_built);
self.push(
ASTType::NotificationStmtList(notification_stmt_list),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn notification_stmt_list_group_0(
&mut self,
_if_feature_stmt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let notification_stmt_list_group_0_built = NotificationStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let notification_stmt_list_group_0_built =
NotificationStmtListGroup::IfFeatureStmt(notification_stmt_list_group_0_built);
self.push(
ASTType::NotificationStmtListGroup(notification_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn notification_stmt_list_group_1(&mut self, _must_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let must_stmt = pop_item!(self, must_stmt, MustStmt, context);
let notification_stmt_list_group_1_built = NotificationStmtListGroupMustStmt {
must_stmt: Box::new(must_stmt),
};
let notification_stmt_list_group_1_built =
NotificationStmtListGroup::MustStmt(notification_stmt_list_group_1_built);
self.push(
ASTType::NotificationStmtListGroup(notification_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn notification_stmt_list_group_2(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let notification_stmt_list_group_2_built = NotificationStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let notification_stmt_list_group_2_built =
NotificationStmtListGroup::StatusStmt(notification_stmt_list_group_2_built);
self.push(
ASTType::NotificationStmtListGroup(notification_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn notification_stmt_list_group_3(
&mut self,
_description_stmt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let notification_stmt_list_group_3_built = NotificationStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let notification_stmt_list_group_3_built =
NotificationStmtListGroup::DescriptionStmt(notification_stmt_list_group_3_built);
self.push(
ASTType::NotificationStmtListGroup(notification_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn notification_stmt_list_group_4(
&mut self,
_reference_stmt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let notification_stmt_list_group_4_built = NotificationStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let notification_stmt_list_group_4_built =
NotificationStmtListGroup::ReferenceStmt(notification_stmt_list_group_4_built);
self.push(
ASTType::NotificationStmtListGroup(notification_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn notification_stmt_list_group_5(&mut self, _typedef_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let typedef_stmt = pop_item!(self, typedef_stmt, TypedefStmt, context);
let notification_stmt_list_group_5_built = NotificationStmtListGroupTypedefStmt {
typedef_stmt: Box::new(typedef_stmt),
};
let notification_stmt_list_group_5_built =
NotificationStmtListGroup::TypedefStmt(notification_stmt_list_group_5_built);
self.push(
ASTType::NotificationStmtListGroup(notification_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn notification_stmt_list_group_6(&mut self, _grouping_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let grouping_stmt = pop_item!(self, grouping_stmt, GroupingStmt, context);
let notification_stmt_list_group_6_built = NotificationStmtListGroupGroupingStmt {
grouping_stmt: Box::new(grouping_stmt),
};
let notification_stmt_list_group_6_built =
NotificationStmtListGroup::GroupingStmt(notification_stmt_list_group_6_built);
self.push(
ASTType::NotificationStmtListGroup(notification_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn notification_stmt_list_group_7(&mut self, _data_def_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let data_def_stmt = pop_item!(self, data_def_stmt, DataDefStmt, context);
let notification_stmt_list_group_7_built = NotificationStmtListGroupDataDefStmt {
data_def_stmt: Box::new(data_def_stmt),
};
let notification_stmt_list_group_7_built =
NotificationStmtListGroup::DataDefStmt(notification_stmt_list_group_7_built);
self.push(
ASTType::NotificationStmtListGroup(notification_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn notification_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let notification_stmt_list_1_built = Vec::new();
self.push(
ASTType::NotificationStmtList(notification_stmt_list_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn if_feature_stmt(
&mut self,
_kw_if_feature: &ParseTreeType<'t>,
_if_feature_expr_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let if_feature_expr_str = pop_item!(self, if_feature_expr_str, IfFeatureExprStr, context);
self.pop(context);
let if_feature_stmt_built = IfFeatureStmt {
if_feature_expr_str: Box::new(if_feature_expr_str),
};
self.user_grammar.if_feature_stmt(&if_feature_stmt_built)?;
self.push(ASTType::IfFeatureStmt(if_feature_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn if_feature_expr_str(&mut self, _if_feature_expr: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_expr = pop_item!(self, if_feature_expr, IfFeatureExpr, context);
let if_feature_expr_str_built = IfFeatureExprStr {
if_feature_expr: Box::new(if_feature_expr),
};
self.user_grammar
.if_feature_expr_str(&if_feature_expr_str_built)?;
self.push(
ASTType::IfFeatureExprStr(if_feature_expr_str_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn if_feature_expr(
&mut self,
_if_feature_term: &ParseTreeType<'t>,
_if_feature_expr_opt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_expr_opt = pop_item!(self, if_feature_expr_opt, IfFeatureExprOpt, context);
let if_feature_term = pop_item!(self, if_feature_term, IfFeatureTerm, context);
let if_feature_expr_built = IfFeatureExpr {
if_feature_term: Box::new(if_feature_term),
if_feature_expr_opt,
};
self.user_grammar.if_feature_expr(&if_feature_expr_built)?;
self.push(ASTType::IfFeatureExpr(if_feature_expr_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn if_feature_expr_opt_0(
&mut self,
or: &ParseTreeType<'t>,
_if_feature_expr: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let or = or.token()?.clone();
let if_feature_expr = pop_item!(self, if_feature_expr, IfFeatureExpr, context);
let if_feature_expr_opt_0_built = IfFeatureExprOpt {
or,
if_feature_expr: Box::new(if_feature_expr),
};
self.push(
ASTType::IfFeatureExprOpt(Some(if_feature_expr_opt_0_built)),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn if_feature_expr_opt_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.push(ASTType::IfFeatureExprOpt(None), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn if_feature_term(
&mut self,
_if_feature_factor: &ParseTreeType<'t>,
_if_feature_term_opt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_term_opt = pop_item!(self, if_feature_term_opt, IfFeatureTermOpt, context);
let if_feature_factor = pop_item!(self, if_feature_factor, IfFeatureFactor, context);
let if_feature_term_built = IfFeatureTerm {
if_feature_factor: Box::new(if_feature_factor),
if_feature_term_opt,
};
self.user_grammar.if_feature_term(&if_feature_term_built)?;
self.push(ASTType::IfFeatureTerm(if_feature_term_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn if_feature_term_opt_0(
&mut self,
and: &ParseTreeType<'t>,
_if_feature_term: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let and = and.token()?.clone();
let if_feature_term = pop_item!(self, if_feature_term, IfFeatureTerm, context);
let if_feature_term_opt_0_built = IfFeatureTermOpt {
and,
if_feature_term: Box::new(if_feature_term),
};
self.push(
ASTType::IfFeatureTermOpt(Some(if_feature_term_opt_0_built)),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn if_feature_term_opt_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.push(ASTType::IfFeatureTermOpt(None), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn if_feature_factor_0(
&mut self,
not: &ParseTreeType<'t>,
_if_feature_factor: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let not = not.token()?.clone();
let if_feature_factor = pop_item!(self, if_feature_factor, IfFeatureFactor, context);
let if_feature_factor_0_built = IfFeatureFactorNotIfFeatureFactor {
not,
if_feature_factor: Box::new(if_feature_factor),
};
let if_feature_factor_0_built =
IfFeatureFactor::NotIfFeatureFactor(if_feature_factor_0_built);
self.user_grammar
.if_feature_factor(&if_feature_factor_0_built)?;
self.push(ASTType::IfFeatureFactor(if_feature_factor_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn if_feature_factor_1(
&mut self,
l_paren: &ParseTreeType<'t>,
_if_feature_expr: &ParseTreeType<'t>,
r_paren: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let l_paren = l_paren.token()?.clone();
let r_paren = r_paren.token()?.clone();
let if_feature_expr = pop_item!(self, if_feature_expr, IfFeatureExpr, context);
let if_feature_factor_1_built = IfFeatureFactorLParenIfFeatureExprRParen {
l_paren,
if_feature_expr: Box::new(if_feature_expr),
r_paren,
};
let if_feature_factor_1_built =
IfFeatureFactor::LParenIfFeatureExprRParen(if_feature_factor_1_built);
self.user_grammar
.if_feature_factor(&if_feature_factor_1_built)?;
self.push(ASTType::IfFeatureFactor(if_feature_factor_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn if_feature_factor_2(&mut self, _identifier: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let identifier = pop_item!(self, identifier, Identifier, context);
let if_feature_factor_2_built = IfFeatureFactorIdentifier {
identifier: Box::new(identifier),
};
let if_feature_factor_2_built = IfFeatureFactor::Identifier(if_feature_factor_2_built);
self.user_grammar
.if_feature_factor(&if_feature_factor_2_built)?;
self.push(ASTType::IfFeatureFactor(if_feature_factor_2_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn if_feature_factor_3(
&mut self,
double_quotation: &ParseTreeType<'t>,
_identifier: &ParseTreeType<'t>,
double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let double_quotation = double_quotation.token()?.clone();
let double_quotation0 = double_quotation0.token()?.clone();
let identifier = pop_item!(self, identifier, Identifier, context);
let if_feature_factor_3_built = IfFeatureFactorDoubleQuotationIdentifierDoubleQuotation {
double_quotation,
identifier: Box::new(identifier),
double_quotation0,
};
let if_feature_factor_3_built =
IfFeatureFactor::DoubleQuotationIdentifierDoubleQuotation(if_feature_factor_3_built);
self.user_grammar
.if_feature_factor(&if_feature_factor_3_built)?;
self.push(ASTType::IfFeatureFactor(if_feature_factor_3_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn presence_stmt(
&mut self,
_presence: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let ystring = pop_item!(self, ystring, Ystring, context);
let presence_stmt_built = PresenceStmt {
ystring: Box::new(ystring),
};
self.user_grammar.presence_stmt(&presence_stmt_built)?;
self.push(ASTType::PresenceStmt(presence_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn uses_stmt(
&mut self,
_kw_uses: &ParseTreeType<'t>,
_identifier_ref_arg_str: &ParseTreeType<'t>,
_uses_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let uses_stmt_suffix = pop_item!(self, uses_stmt_suffix, UsesStmtSuffix, context);
let identifier_ref_arg_str =
pop_item!(self, identifier_ref_arg_str, IdentifierRefArgStr, context);
self.pop(context);
let uses_stmt_built = UsesStmt {
identifier_ref_arg_str: Box::new(identifier_ref_arg_str),
uses_stmt_suffix: Box::new(uses_stmt_suffix),
};
self.user_grammar.uses_stmt(&uses_stmt_built)?;
self.push(ASTType::UsesStmt(uses_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn uses_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let uses_stmt_suffix_0_built = UsesStmtSuffixSemicolon {};
let uses_stmt_suffix_0_built = UsesStmtSuffix::Semicolon(uses_stmt_suffix_0_built);
self.push(ASTType::UsesStmtSuffix(uses_stmt_suffix_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn uses_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_uses_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let uses_stmt_list = pop_and_reverse_item!(self, uses_stmt_list, UsesStmtList, context);
self.pop(context);
let uses_stmt_suffix_1_built = UsesStmtSuffixLBraceUsesStmtListRBrace { uses_stmt_list };
let uses_stmt_suffix_1_built =
UsesStmtSuffix::LBraceUsesStmtListRBrace(uses_stmt_suffix_1_built);
self.push(ASTType::UsesStmtSuffix(uses_stmt_suffix_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn uses_stmt_list_0(
&mut self,
_uses_stmt_list_group: &ParseTreeType<'t>,
_uses_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut uses_stmt_list = pop_item!(self, uses_stmt_list, UsesStmtList, context);
let uses_stmt_list_group =
pop_item!(self, uses_stmt_list_group, UsesStmtListGroup, context);
let uses_stmt_list_0_built = UsesStmtList {
uses_stmt_list_group: Box::new(uses_stmt_list_group),
};
uses_stmt_list.push(uses_stmt_list_0_built);
self.push(ASTType::UsesStmtList(uses_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn uses_stmt_list_group_0(&mut self, _when_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let when_stmt = pop_item!(self, when_stmt, WhenStmt, context);
let uses_stmt_list_group_0_built = UsesStmtListGroupWhenStmt {
when_stmt: Box::new(when_stmt),
};
let uses_stmt_list_group_0_built =
UsesStmtListGroup::WhenStmt(uses_stmt_list_group_0_built);
self.push(
ASTType::UsesStmtListGroup(uses_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn uses_stmt_list_group_1(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let uses_stmt_list_group_1_built = UsesStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let uses_stmt_list_group_1_built =
UsesStmtListGroup::IfFeatureStmt(uses_stmt_list_group_1_built);
self.push(
ASTType::UsesStmtListGroup(uses_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn uses_stmt_list_group_2(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let uses_stmt_list_group_2_built = UsesStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let uses_stmt_list_group_2_built =
UsesStmtListGroup::StatusStmt(uses_stmt_list_group_2_built);
self.push(
ASTType::UsesStmtListGroup(uses_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn uses_stmt_list_group_3(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let uses_stmt_list_group_3_built = UsesStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let uses_stmt_list_group_3_built =
UsesStmtListGroup::DescriptionStmt(uses_stmt_list_group_3_built);
self.push(
ASTType::UsesStmtListGroup(uses_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn uses_stmt_list_group_4(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let uses_stmt_list_group_4_built = UsesStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let uses_stmt_list_group_4_built =
UsesStmtListGroup::ReferenceStmt(uses_stmt_list_group_4_built);
self.push(
ASTType::UsesStmtListGroup(uses_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn uses_stmt_list_group_5(&mut self, _refine_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let refine_stmt = pop_item!(self, refine_stmt, RefineStmt, context);
let uses_stmt_list_group_5_built = UsesStmtListGroupRefineStmt {
refine_stmt: Box::new(refine_stmt),
};
let uses_stmt_list_group_5_built =
UsesStmtListGroup::RefineStmt(uses_stmt_list_group_5_built);
self.push(
ASTType::UsesStmtListGroup(uses_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn uses_stmt_list_group_6(&mut self, _augment_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let augment_stmt = pop_item!(self, augment_stmt, AugmentStmt, context);
let uses_stmt_list_group_6_built = UsesStmtListGroupAugmentStmt {
augment_stmt: Box::new(augment_stmt),
};
let uses_stmt_list_group_6_built =
UsesStmtListGroup::AugmentStmt(uses_stmt_list_group_6_built);
self.push(
ASTType::UsesStmtListGroup(uses_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn uses_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let uses_stmt_list_1_built = Vec::new();
self.push(ASTType::UsesStmtList(uses_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt(
&mut self,
_kw_refine: &ParseTreeType<'t>,
_refine_arg_str: &ParseTreeType<'t>,
_refine_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let refine_stmt_suffix = pop_item!(self, refine_stmt_suffix, RefineStmtSuffix, context);
let refine_arg_str = pop_item!(self, refine_arg_str, RefineArgStr, context);
self.pop(context);
let refine_stmt_built = RefineStmt {
refine_arg_str: Box::new(refine_arg_str),
refine_stmt_suffix: Box::new(refine_stmt_suffix),
};
self.user_grammar.refine_stmt(&refine_stmt_built)?;
self.push(ASTType::RefineStmt(refine_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let refine_stmt_suffix_0_built = RefineStmtSuffixSemicolon {};
let refine_stmt_suffix_0_built = RefineStmtSuffix::Semicolon(refine_stmt_suffix_0_built);
self.push(
ASTType::RefineStmtSuffix(refine_stmt_suffix_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_refine_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let refine_stmt_list =
pop_and_reverse_item!(self, refine_stmt_list, RefineStmtList, context);
self.pop(context);
let refine_stmt_suffix_1_built =
RefineStmtSuffixLBraceRefineStmtListRBrace { refine_stmt_list };
let refine_stmt_suffix_1_built =
RefineStmtSuffix::LBraceRefineStmtListRBrace(refine_stmt_suffix_1_built);
self.push(
ASTType::RefineStmtSuffix(refine_stmt_suffix_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_list_0(
&mut self,
_refine_stmt_list_group: &ParseTreeType<'t>,
_refine_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut refine_stmt_list = pop_item!(self, refine_stmt_list, RefineStmtList, context);
let refine_stmt_list_group =
pop_item!(self, refine_stmt_list_group, RefineStmtListGroup, context);
let refine_stmt_list_0_built = RefineStmtList {
refine_stmt_list_group: Box::new(refine_stmt_list_group),
};
refine_stmt_list.push(refine_stmt_list_0_built);
self.push(ASTType::RefineStmtList(refine_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_list_group_0(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let refine_stmt_list_group_0_built = RefineStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let refine_stmt_list_group_0_built =
RefineStmtListGroup::IfFeatureStmt(refine_stmt_list_group_0_built);
self.push(
ASTType::RefineStmtListGroup(refine_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_list_group_1(&mut self, _must_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let must_stmt = pop_item!(self, must_stmt, MustStmt, context);
let refine_stmt_list_group_1_built = RefineStmtListGroupMustStmt {
must_stmt: Box::new(must_stmt),
};
let refine_stmt_list_group_1_built =
RefineStmtListGroup::MustStmt(refine_stmt_list_group_1_built);
self.push(
ASTType::RefineStmtListGroup(refine_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_list_group_2(&mut self, _presence_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let presence_stmt = pop_item!(self, presence_stmt, PresenceStmt, context);
let refine_stmt_list_group_2_built = RefineStmtListGroupPresenceStmt {
presence_stmt: Box::new(presence_stmt),
};
let refine_stmt_list_group_2_built =
RefineStmtListGroup::PresenceStmt(refine_stmt_list_group_2_built);
self.push(
ASTType::RefineStmtListGroup(refine_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_list_group_3(&mut self, _default_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let default_stmt = pop_item!(self, default_stmt, DefaultStmt, context);
let refine_stmt_list_group_3_built = RefineStmtListGroupDefaultStmt {
default_stmt: Box::new(default_stmt),
};
let refine_stmt_list_group_3_built =
RefineStmtListGroup::DefaultStmt(refine_stmt_list_group_3_built);
self.push(
ASTType::RefineStmtListGroup(refine_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_list_group_4(&mut self, _config_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let config_stmt = pop_item!(self, config_stmt, ConfigStmt, context);
let refine_stmt_list_group_4_built = RefineStmtListGroupConfigStmt {
config_stmt: Box::new(config_stmt),
};
let refine_stmt_list_group_4_built =
RefineStmtListGroup::ConfigStmt(refine_stmt_list_group_4_built);
self.push(
ASTType::RefineStmtListGroup(refine_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_list_group_5(&mut self, _mandatory_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mandatory_stmt = pop_item!(self, mandatory_stmt, MandatoryStmt, context);
let refine_stmt_list_group_5_built = RefineStmtListGroupMandatoryStmt {
mandatory_stmt: Box::new(mandatory_stmt),
};
let refine_stmt_list_group_5_built =
RefineStmtListGroup::MandatoryStmt(refine_stmt_list_group_5_built);
self.push(
ASTType::RefineStmtListGroup(refine_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_list_group_6(&mut self, _min_elements_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let min_elements_stmt = pop_item!(self, min_elements_stmt, MinElementsStmt, context);
let refine_stmt_list_group_6_built = RefineStmtListGroupMinElementsStmt {
min_elements_stmt: Box::new(min_elements_stmt),
};
let refine_stmt_list_group_6_built =
RefineStmtListGroup::MinElementsStmt(refine_stmt_list_group_6_built);
self.push(
ASTType::RefineStmtListGroup(refine_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_list_group_7(&mut self, _max_elements_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let max_elements_stmt = pop_item!(self, max_elements_stmt, MaxElementsStmt, context);
let refine_stmt_list_group_7_built = RefineStmtListGroupMaxElementsStmt {
max_elements_stmt: Box::new(max_elements_stmt),
};
let refine_stmt_list_group_7_built =
RefineStmtListGroup::MaxElementsStmt(refine_stmt_list_group_7_built);
self.push(
ASTType::RefineStmtListGroup(refine_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_list_group_8(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let refine_stmt_list_group_8_built = RefineStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let refine_stmt_list_group_8_built =
RefineStmtListGroup::DescriptionStmt(refine_stmt_list_group_8_built);
self.push(
ASTType::RefineStmtListGroup(refine_stmt_list_group_8_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_list_group_9(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let refine_stmt_list_group_9_built = RefineStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let refine_stmt_list_group_9_built =
RefineStmtListGroup::ReferenceStmt(refine_stmt_list_group_9_built);
self.push(
ASTType::RefineStmtListGroup(refine_stmt_list_group_9_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let refine_stmt_list_1_built = Vec::new();
self.push(ASTType::RefineStmtList(refine_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_arg_str_0(&mut self, _refine_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let refine_arg = pop_item!(self, refine_arg, RefineArg, context);
let refine_arg_str_0_built = RefineArgStrRefineArg {
refine_arg: Box::new(refine_arg),
};
let refine_arg_str_0_built = RefineArgStr::RefineArg(refine_arg_str_0_built);
self.user_grammar.refine_arg_str(&refine_arg_str_0_built)?;
self.push(ASTType::RefineArgStr(refine_arg_str_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_arg_str_1(
&mut self,
double_quotation: &ParseTreeType<'t>,
_refine_arg: &ParseTreeType<'t>,
double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let double_quotation = double_quotation.token()?.clone();
let double_quotation0 = double_quotation0.token()?.clone();
let refine_arg = pop_item!(self, refine_arg, RefineArg, context);
let refine_arg_str_1_built = RefineArgStrDoubleQuotationRefineArgDoubleQuotation {
double_quotation,
refine_arg: Box::new(refine_arg),
double_quotation0,
};
let refine_arg_str_1_built =
RefineArgStr::DoubleQuotationRefineArgDoubleQuotation(refine_arg_str_1_built);
self.user_grammar.refine_arg_str(&refine_arg_str_1_built)?;
self.push(ASTType::RefineArgStr(refine_arg_str_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn refine_arg(&mut self, _descendant_schema_nodeid: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let descendant_schema_nodeid = pop_item!(
self,
descendant_schema_nodeid,
DescendantSchemaNodeid,
context
);
let refine_arg_built = RefineArg {
descendant_schema_nodeid: Box::new(descendant_schema_nodeid),
};
self.user_grammar.refine_arg(&refine_arg_built)?;
self.push(ASTType::RefineArg(refine_arg_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn descendant_schema_nodeid_0(&mut self, _identifier_ref: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let identifier_ref = pop_item!(self, identifier_ref, IdentifierRef, context);
let descendant_schema_nodeid_0_built = DescendantSchemaNodeidIdentifierRef {
identifier_ref: Box::new(identifier_ref),
};
let descendant_schema_nodeid_0_built =
DescendantSchemaNodeid::IdentifierRef(descendant_schema_nodeid_0_built);
self.user_grammar
.descendant_schema_nodeid(&descendant_schema_nodeid_0_built)?;
self.push(
ASTType::DescendantSchemaNodeid(descendant_schema_nodeid_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn descendant_schema_nodeid_1(
&mut self,
_absolute_schema_nodeid: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let absolute_schema_nodeid =
pop_item!(self, absolute_schema_nodeid, AbsoluteSchemaNodeid, context);
let descendant_schema_nodeid_1_built = DescendantSchemaNodeidAbsoluteSchemaNodeid {
absolute_schema_nodeid: Box::new(absolute_schema_nodeid),
};
let descendant_schema_nodeid_1_built =
DescendantSchemaNodeid::AbsoluteSchemaNodeid(descendant_schema_nodeid_1_built);
self.user_grammar
.descendant_schema_nodeid(&descendant_schema_nodeid_1_built)?;
self.push(
ASTType::DescendantSchemaNodeid(descendant_schema_nodeid_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn unknown_stmt(
&mut self,
_identifier_ref: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
_unknown_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let unknown_stmt_suffix = pop_item!(self, unknown_stmt_suffix, UnknownStmtSuffix, context);
let ystring = pop_item!(self, ystring, Ystring, context);
let identifier_ref = pop_item!(self, identifier_ref, IdentifierRef, context);
let unknown_stmt_built = UnknownStmt {
identifier_ref: Box::new(identifier_ref),
ystring: Box::new(ystring),
unknown_stmt_suffix: Box::new(unknown_stmt_suffix),
};
self.user_grammar.unknown_stmt(&unknown_stmt_built)?;
self.push(ASTType::UnknownStmt(unknown_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn unknown_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let unknown_stmt_suffix_0_built = UnknownStmtSuffixSemicolon {};
let unknown_stmt_suffix_0_built = UnknownStmtSuffix::Semicolon(unknown_stmt_suffix_0_built);
self.push(
ASTType::UnknownStmtSuffix(unknown_stmt_suffix_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn unknown_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_unknown_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let unknown_stmt_list =
pop_and_reverse_item!(self, unknown_stmt_list, UnknownStmtList, context);
self.pop(context);
let unknown_stmt_suffix_1_built =
UnknownStmtSuffixLBraceUnknownStmtListRBrace { unknown_stmt_list };
let unknown_stmt_suffix_1_built =
UnknownStmtSuffix::LBraceUnknownStmtListRBrace(unknown_stmt_suffix_1_built);
self.push(
ASTType::UnknownStmtSuffix(unknown_stmt_suffix_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn unknown_stmt_list_0(
&mut self,
_unknown_stmt_list_group: &ParseTreeType<'t>,
_unknown_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut unknown_stmt_list = pop_item!(self, unknown_stmt_list, UnknownStmtList, context);
let unknown_stmt_list_group =
pop_item!(self, unknown_stmt_list_group, UnknownStmtListGroup, context);
let unknown_stmt_list_0_built = UnknownStmtList {
unknown_stmt_list_group: Box::new(unknown_stmt_list_group),
};
unknown_stmt_list.push(unknown_stmt_list_0_built);
self.push(ASTType::UnknownStmtList(unknown_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn unknown_stmt_list_group_0(&mut self, _type_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let type_stmt = pop_item!(self, type_stmt, TypeStmt, context);
let unknown_stmt_list_group_0_built = UnknownStmtListGroupTypeStmt {
type_stmt: Box::new(type_stmt),
};
let unknown_stmt_list_group_0_built =
UnknownStmtListGroup::TypeStmt(unknown_stmt_list_group_0_built);
self.push(
ASTType::UnknownStmtListGroup(unknown_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn unknown_stmt_list_group_1(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let unknown_stmt_list_group_1_built = UnknownStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let unknown_stmt_list_group_1_built =
UnknownStmtListGroup::DescriptionStmt(unknown_stmt_list_group_1_built);
self.push(
ASTType::UnknownStmtListGroup(unknown_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn unknown_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let unknown_stmt_list_1_built = Vec::new();
self.push(ASTType::UnknownStmtList(unknown_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt(
&mut self,
_kw_leaf_list: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_leaf_list_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let leaf_list_stmt_list =
pop_and_reverse_item!(self, leaf_list_stmt_list, LeafListStmtList, context);
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let leaf_list_stmt_built = LeafListStmt {
identifier_arg_str: Box::new(identifier_arg_str),
leaf_list_stmt_list,
};
self.user_grammar.leaf_list_stmt(&leaf_list_stmt_built)?;
self.push(ASTType::LeafListStmt(leaf_list_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_0(
&mut self,
_leaf_list_stmt_list_group: &ParseTreeType<'t>,
_leaf_list_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut leaf_list_stmt_list =
pop_item!(self, leaf_list_stmt_list, LeafListStmtList, context);
let leaf_list_stmt_list_group = pop_item!(
self,
leaf_list_stmt_list_group,
LeafListStmtListGroup,
context
);
let leaf_list_stmt_list_0_built = LeafListStmtList {
leaf_list_stmt_list_group: Box::new(leaf_list_stmt_list_group),
};
leaf_list_stmt_list.push(leaf_list_stmt_list_0_built);
self.push(ASTType::LeafListStmtList(leaf_list_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_0(&mut self, _when_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let when_stmt = pop_item!(self, when_stmt, WhenStmt, context);
let leaf_list_stmt_list_group_0_built = LeafListStmtListGroupWhenStmt {
when_stmt: Box::new(when_stmt),
};
let leaf_list_stmt_list_group_0_built =
LeafListStmtListGroup::WhenStmt(leaf_list_stmt_list_group_0_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_1(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let leaf_list_stmt_list_group_1_built = LeafListStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let leaf_list_stmt_list_group_1_built =
LeafListStmtListGroup::IfFeatureStmt(leaf_list_stmt_list_group_1_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_2(&mut self, _type_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let type_stmt = pop_item!(self, type_stmt, TypeStmt, context);
let leaf_list_stmt_list_group_2_built = LeafListStmtListGroupTypeStmt {
type_stmt: Box::new(type_stmt),
};
let leaf_list_stmt_list_group_2_built =
LeafListStmtListGroup::TypeStmt(leaf_list_stmt_list_group_2_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_3(&mut self, _units_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let units_stmt = pop_item!(self, units_stmt, UnitsStmt, context);
let leaf_list_stmt_list_group_3_built = LeafListStmtListGroupUnitsStmt {
units_stmt: Box::new(units_stmt),
};
let leaf_list_stmt_list_group_3_built =
LeafListStmtListGroup::UnitsStmt(leaf_list_stmt_list_group_3_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_4(&mut self, _must_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let must_stmt = pop_item!(self, must_stmt, MustStmt, context);
let leaf_list_stmt_list_group_4_built = LeafListStmtListGroupMustStmt {
must_stmt: Box::new(must_stmt),
};
let leaf_list_stmt_list_group_4_built =
LeafListStmtListGroup::MustStmt(leaf_list_stmt_list_group_4_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_5(&mut self, _default_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let default_stmt = pop_item!(self, default_stmt, DefaultStmt, context);
let leaf_list_stmt_list_group_5_built = LeafListStmtListGroupDefaultStmt {
default_stmt: Box::new(default_stmt),
};
let leaf_list_stmt_list_group_5_built =
LeafListStmtListGroup::DefaultStmt(leaf_list_stmt_list_group_5_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_6(&mut self, _config_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let config_stmt = pop_item!(self, config_stmt, ConfigStmt, context);
let leaf_list_stmt_list_group_6_built = LeafListStmtListGroupConfigStmt {
config_stmt: Box::new(config_stmt),
};
let leaf_list_stmt_list_group_6_built =
LeafListStmtListGroup::ConfigStmt(leaf_list_stmt_list_group_6_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_7(
&mut self,
_min_elements_stmt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let min_elements_stmt = pop_item!(self, min_elements_stmt, MinElementsStmt, context);
let leaf_list_stmt_list_group_7_built = LeafListStmtListGroupMinElementsStmt {
min_elements_stmt: Box::new(min_elements_stmt),
};
let leaf_list_stmt_list_group_7_built =
LeafListStmtListGroup::MinElementsStmt(leaf_list_stmt_list_group_7_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_8(
&mut self,
_max_elements_stmt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let max_elements_stmt = pop_item!(self, max_elements_stmt, MaxElementsStmt, context);
let leaf_list_stmt_list_group_8_built = LeafListStmtListGroupMaxElementsStmt {
max_elements_stmt: Box::new(max_elements_stmt),
};
let leaf_list_stmt_list_group_8_built =
LeafListStmtListGroup::MaxElementsStmt(leaf_list_stmt_list_group_8_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_8_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_9(&mut self, _ordered_by_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let ordered_by_stmt = pop_item!(self, ordered_by_stmt, OrderedByStmt, context);
let leaf_list_stmt_list_group_9_built = LeafListStmtListGroupOrderedByStmt {
ordered_by_stmt: Box::new(ordered_by_stmt),
};
let leaf_list_stmt_list_group_9_built =
LeafListStmtListGroup::OrderedByStmt(leaf_list_stmt_list_group_9_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_9_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_10(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let leaf_list_stmt_list_group_10_built = LeafListStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let leaf_list_stmt_list_group_10_built =
LeafListStmtListGroup::StatusStmt(leaf_list_stmt_list_group_10_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_10_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_11(
&mut self,
_description_stmt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let leaf_list_stmt_list_group_11_built = LeafListStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let leaf_list_stmt_list_group_11_built =
LeafListStmtListGroup::DescriptionStmt(leaf_list_stmt_list_group_11_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_11_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_12(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let leaf_list_stmt_list_group_12_built = LeafListStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let leaf_list_stmt_list_group_12_built =
LeafListStmtListGroup::ReferenceStmt(leaf_list_stmt_list_group_12_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_12_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_group_13(&mut self, _unknown_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let unknown_stmt = pop_item!(self, unknown_stmt, UnknownStmt, context);
let leaf_list_stmt_list_group_13_built = LeafListStmtListGroupUnknownStmt {
unknown_stmt: Box::new(unknown_stmt),
};
let leaf_list_stmt_list_group_13_built =
LeafListStmtListGroup::UnknownStmt(leaf_list_stmt_list_group_13_built);
self.push(
ASTType::LeafListStmtListGroup(leaf_list_stmt_list_group_13_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_list_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let leaf_list_stmt_list_1_built = Vec::new();
self.push(
ASTType::LeafListStmtList(leaf_list_stmt_list_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt(
&mut self,
_kw_leaf: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_leaf_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let leaf_stmt_list = pop_and_reverse_item!(self, leaf_stmt_list, LeafStmtList, context);
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let leaf_stmt_built = LeafStmt {
identifier_arg_str: Box::new(identifier_arg_str),
leaf_stmt_list,
};
self.user_grammar.leaf_stmt(&leaf_stmt_built)?;
self.push(ASTType::LeafStmt(leaf_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_0(
&mut self,
_leaf_stmt_list_group: &ParseTreeType<'t>,
_leaf_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut leaf_stmt_list = pop_item!(self, leaf_stmt_list, LeafStmtList, context);
let leaf_stmt_list_group =
pop_item!(self, leaf_stmt_list_group, LeafStmtListGroup, context);
let leaf_stmt_list_0_built = LeafStmtList {
leaf_stmt_list_group: Box::new(leaf_stmt_list_group),
};
leaf_stmt_list.push(leaf_stmt_list_0_built);
self.push(ASTType::LeafStmtList(leaf_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_group_0(&mut self, _when_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let when_stmt = pop_item!(self, when_stmt, WhenStmt, context);
let leaf_stmt_list_group_0_built = LeafStmtListGroupWhenStmt {
when_stmt: Box::new(when_stmt),
};
let leaf_stmt_list_group_0_built =
LeafStmtListGroup::WhenStmt(leaf_stmt_list_group_0_built);
self.push(
ASTType::LeafStmtListGroup(leaf_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_group_1(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let leaf_stmt_list_group_1_built = LeafStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let leaf_stmt_list_group_1_built =
LeafStmtListGroup::StatusStmt(leaf_stmt_list_group_1_built);
self.push(
ASTType::LeafStmtListGroup(leaf_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_group_2(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let leaf_stmt_list_group_2_built = LeafStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let leaf_stmt_list_group_2_built =
LeafStmtListGroup::IfFeatureStmt(leaf_stmt_list_group_2_built);
self.push(
ASTType::LeafStmtListGroup(leaf_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_group_3(&mut self, _type_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let type_stmt = pop_item!(self, type_stmt, TypeStmt, context);
let leaf_stmt_list_group_3_built = LeafStmtListGroupTypeStmt {
type_stmt: Box::new(type_stmt),
};
let leaf_stmt_list_group_3_built =
LeafStmtListGroup::TypeStmt(leaf_stmt_list_group_3_built);
self.push(
ASTType::LeafStmtListGroup(leaf_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_group_4(&mut self, _units_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let units_stmt = pop_item!(self, units_stmt, UnitsStmt, context);
let leaf_stmt_list_group_4_built = LeafStmtListGroupUnitsStmt {
units_stmt: Box::new(units_stmt),
};
let leaf_stmt_list_group_4_built =
LeafStmtListGroup::UnitsStmt(leaf_stmt_list_group_4_built);
self.push(
ASTType::LeafStmtListGroup(leaf_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_group_5(&mut self, _must_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let must_stmt = pop_item!(self, must_stmt, MustStmt, context);
let leaf_stmt_list_group_5_built = LeafStmtListGroupMustStmt {
must_stmt: Box::new(must_stmt),
};
let leaf_stmt_list_group_5_built =
LeafStmtListGroup::MustStmt(leaf_stmt_list_group_5_built);
self.push(
ASTType::LeafStmtListGroup(leaf_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_group_6(&mut self, _default_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let default_stmt = pop_item!(self, default_stmt, DefaultStmt, context);
let leaf_stmt_list_group_6_built = LeafStmtListGroupDefaultStmt {
default_stmt: Box::new(default_stmt),
};
let leaf_stmt_list_group_6_built =
LeafStmtListGroup::DefaultStmt(leaf_stmt_list_group_6_built);
self.push(
ASTType::LeafStmtListGroup(leaf_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_group_7(&mut self, _config_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let config_stmt = pop_item!(self, config_stmt, ConfigStmt, context);
let leaf_stmt_list_group_7_built = LeafStmtListGroupConfigStmt {
config_stmt: Box::new(config_stmt),
};
let leaf_stmt_list_group_7_built =
LeafStmtListGroup::ConfigStmt(leaf_stmt_list_group_7_built);
self.push(
ASTType::LeafStmtListGroup(leaf_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_group_8(&mut self, _mandatory_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mandatory_stmt = pop_item!(self, mandatory_stmt, MandatoryStmt, context);
let leaf_stmt_list_group_8_built = LeafStmtListGroupMandatoryStmt {
mandatory_stmt: Box::new(mandatory_stmt),
};
let leaf_stmt_list_group_8_built =
LeafStmtListGroup::MandatoryStmt(leaf_stmt_list_group_8_built);
self.push(
ASTType::LeafStmtListGroup(leaf_stmt_list_group_8_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_group_9(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let leaf_stmt_list_group_9_built = LeafStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let leaf_stmt_list_group_9_built =
LeafStmtListGroup::DescriptionStmt(leaf_stmt_list_group_9_built);
self.push(
ASTType::LeafStmtListGroup(leaf_stmt_list_group_9_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_group_10(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let leaf_stmt_list_group_10_built = LeafStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let leaf_stmt_list_group_10_built =
LeafStmtListGroup::ReferenceStmt(leaf_stmt_list_group_10_built);
self.push(
ASTType::LeafStmtListGroup(leaf_stmt_list_group_10_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_group_11(&mut self, _unknown_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let unknown_stmt = pop_item!(self, unknown_stmt, UnknownStmt, context);
let leaf_stmt_list_group_11_built = LeafStmtListGroupUnknownStmt {
unknown_stmt: Box::new(unknown_stmt),
};
let leaf_stmt_list_group_11_built =
LeafStmtListGroup::UnknownStmt(leaf_stmt_list_group_11_built);
self.push(
ASTType::LeafStmtListGroup(leaf_stmt_list_group_11_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leaf_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let leaf_stmt_list_1_built = Vec::new();
self.push(ASTType::LeafStmtList(leaf_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn must_stmt(
&mut self,
_must: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
_must_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let must_stmt_suffix = pop_item!(self, must_stmt_suffix, MustStmtSuffix, context);
let ystring = pop_item!(self, ystring, Ystring, context);
let must_stmt_built = MustStmt {
ystring: Box::new(ystring),
must_stmt_suffix: Box::new(must_stmt_suffix),
};
self.user_grammar.must_stmt(&must_stmt_built)?;
self.push(ASTType::MustStmt(must_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn must_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let must_stmt_suffix_0_built = MustStmtSuffixSemicolon {};
let must_stmt_suffix_0_built = MustStmtSuffix::Semicolon(must_stmt_suffix_0_built);
self.push(ASTType::MustStmtSuffix(must_stmt_suffix_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn must_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_must_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let must_stmt_list = pop_and_reverse_item!(self, must_stmt_list, MustStmtList, context);
self.pop(context);
let must_stmt_suffix_1_built = MustStmtSuffixLBraceMustStmtListRBrace { must_stmt_list };
let must_stmt_suffix_1_built =
MustStmtSuffix::LBraceMustStmtListRBrace(must_stmt_suffix_1_built);
self.push(ASTType::MustStmtSuffix(must_stmt_suffix_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn must_stmt_list_0(
&mut self,
_must_stmt_list_group: &ParseTreeType<'t>,
_must_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut must_stmt_list = pop_item!(self, must_stmt_list, MustStmtList, context);
let must_stmt_list_group =
pop_item!(self, must_stmt_list_group, MustStmtListGroup, context);
let must_stmt_list_0_built = MustStmtList {
must_stmt_list_group: Box::new(must_stmt_list_group),
};
must_stmt_list.push(must_stmt_list_0_built);
self.push(ASTType::MustStmtList(must_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn must_stmt_list_group_0(&mut self, _error_message: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let error_message = pop_item!(self, error_message, ErrorMessage, context);
let must_stmt_list_group_0_built = MustStmtListGroupErrorMessage {
error_message: Box::new(error_message),
};
let must_stmt_list_group_0_built =
MustStmtListGroup::ErrorMessage(must_stmt_list_group_0_built);
self.push(
ASTType::MustStmtListGroup(must_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn must_stmt_list_group_1(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let must_stmt_list_group_1_built = MustStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let must_stmt_list_group_1_built =
MustStmtListGroup::DescriptionStmt(must_stmt_list_group_1_built);
self.push(
ASTType::MustStmtListGroup(must_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn must_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let must_stmt_list_1_built = Vec::new();
self.push(ASTType::MustStmtList(must_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn error_message(
&mut self,
error_minus_message: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let error_minus_message = error_minus_message.token()?.clone();
let semicolon = pop_item!(self, semicolon, Semicolon, context);
let ystring = pop_item!(self, ystring, Ystring, context);
let error_message_built = ErrorMessage {
error_minus_message,
ystring: Box::new(ystring),
semicolon: Box::new(semicolon),
};
self.user_grammar.error_message(&error_message_built)?;
self.push(ASTType::ErrorMessage(error_message_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn units_stmt(
&mut self,
units: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let units = units.token()?.clone();
let semicolon = pop_item!(self, semicolon, Semicolon, context);
let ystring = pop_item!(self, ystring, Ystring, context);
let units_stmt_built = UnitsStmt {
units,
ystring: Box::new(ystring),
semicolon: Box::new(semicolon),
};
self.user_grammar.units_stmt(&units_stmt_built)?;
self.push(ASTType::UnitsStmt(units_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn config_stmt(
&mut self,
_kw_config: &ParseTreeType<'t>,
_mandatory_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let semicolon = pop_item!(self, semicolon, Semicolon, context);
let mandatory_arg_str = pop_item!(self, mandatory_arg_str, MandatoryArgStr, context);
self.pop(context);
let config_stmt_built = ConfigStmt {
mandatory_arg_str: Box::new(mandatory_arg_str),
semicolon: Box::new(semicolon),
};
self.user_grammar.config_stmt(&config_stmt_built)?;
self.push(ASTType::ConfigStmt(config_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn mandatory_stmt(
&mut self,
_kw_mandatory: &ParseTreeType<'t>,
_mandatory_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let semicolon = pop_item!(self, semicolon, Semicolon, context);
let mandatory_arg_str = pop_item!(self, mandatory_arg_str, MandatoryArgStr, context);
self.pop(context);
let mandatory_stmt_built = MandatoryStmt {
mandatory_arg_str: Box::new(mandatory_arg_str),
semicolon: Box::new(semicolon),
};
self.user_grammar.mandatory_stmt(&mandatory_stmt_built)?;
self.push(ASTType::MandatoryStmt(mandatory_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn mandatory_arg_str_0(&mut self, _mandatory_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mandatory_arg = pop_item!(self, mandatory_arg, MandatoryArg, context);
let mandatory_arg_str_0_built = MandatoryArgStrMandatoryArg {
mandatory_arg: Box::new(mandatory_arg),
};
let mandatory_arg_str_0_built = MandatoryArgStr::MandatoryArg(mandatory_arg_str_0_built);
self.user_grammar
.mandatory_arg_str(&mandatory_arg_str_0_built)?;
self.push(ASTType::MandatoryArgStr(mandatory_arg_str_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn mandatory_arg_str_1(
&mut self,
double_quotation: &ParseTreeType<'t>,
_mandatory_arg: &ParseTreeType<'t>,
double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let double_quotation = double_quotation.token()?.clone();
let double_quotation0 = double_quotation0.token()?.clone();
let mandatory_arg = pop_item!(self, mandatory_arg, MandatoryArg, context);
let mandatory_arg_str_1_built = MandatoryArgStrDoubleQuotationMandatoryArgDoubleQuotation {
double_quotation,
mandatory_arg: Box::new(mandatory_arg),
double_quotation0,
};
let mandatory_arg_str_1_built =
MandatoryArgStr::DoubleQuotationMandatoryArgDoubleQuotation(mandatory_arg_str_1_built);
self.user_grammar
.mandatory_arg_str(&mandatory_arg_str_1_built)?;
self.push(ASTType::MandatoryArgStr(mandatory_arg_str_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn mandatory_arg(&mut self, mandatory_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mandatory_arg = mandatory_arg.token()?.clone();
let mandatory_arg_built = MandatoryArg { mandatory_arg };
self.user_grammar.mandatory_arg(&mandatory_arg_built)?;
self.push(ASTType::MandatoryArg(mandatory_arg_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt(
&mut self,
_kw_list: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_list_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let list_stmt_list = pop_and_reverse_item!(self, list_stmt_list, ListStmtList, context);
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let list_stmt_built = ListStmt {
identifier_arg_str: Box::new(identifier_arg_str),
list_stmt_list,
};
self.user_grammar.list_stmt(&list_stmt_built)?;
self.push(ASTType::ListStmt(list_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_0(
&mut self,
_list_stmt_list_group: &ParseTreeType<'t>,
_list_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut list_stmt_list = pop_item!(self, list_stmt_list, ListStmtList, context);
let list_stmt_list_group =
pop_item!(self, list_stmt_list_group, ListStmtListGroup, context);
let list_stmt_list_0_built = ListStmtList {
list_stmt_list_group: Box::new(list_stmt_list_group),
};
list_stmt_list.push(list_stmt_list_0_built);
self.push(ASTType::ListStmtList(list_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_0(&mut self, _when_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let when_stmt = pop_item!(self, when_stmt, WhenStmt, context);
let list_stmt_list_group_0_built = ListStmtListGroupWhenStmt {
when_stmt: Box::new(when_stmt),
};
let list_stmt_list_group_0_built =
ListStmtListGroup::WhenStmt(list_stmt_list_group_0_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_1(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let list_stmt_list_group_1_built = ListStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let list_stmt_list_group_1_built =
ListStmtListGroup::IfFeatureStmt(list_stmt_list_group_1_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_2(&mut self, _must_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let must_stmt = pop_item!(self, must_stmt, MustStmt, context);
let list_stmt_list_group_2_built = ListStmtListGroupMustStmt {
must_stmt: Box::new(must_stmt),
};
let list_stmt_list_group_2_built =
ListStmtListGroup::MustStmt(list_stmt_list_group_2_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_3(&mut self, _key_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let key_stmt = pop_item!(self, key_stmt, KeyStmt, context);
let list_stmt_list_group_3_built = ListStmtListGroupKeyStmt {
key_stmt: Box::new(key_stmt),
};
let list_stmt_list_group_3_built = ListStmtListGroup::KeyStmt(list_stmt_list_group_3_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_4(&mut self, _config_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let config_stmt = pop_item!(self, config_stmt, ConfigStmt, context);
let list_stmt_list_group_4_built = ListStmtListGroupConfigStmt {
config_stmt: Box::new(config_stmt),
};
let list_stmt_list_group_4_built =
ListStmtListGroup::ConfigStmt(list_stmt_list_group_4_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_5(&mut self, _min_elements_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let min_elements_stmt = pop_item!(self, min_elements_stmt, MinElementsStmt, context);
let list_stmt_list_group_5_built = ListStmtListGroupMinElementsStmt {
min_elements_stmt: Box::new(min_elements_stmt),
};
let list_stmt_list_group_5_built =
ListStmtListGroup::MinElementsStmt(list_stmt_list_group_5_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_6(&mut self, _max_elements_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let max_elements_stmt = pop_item!(self, max_elements_stmt, MaxElementsStmt, context);
let list_stmt_list_group_6_built = ListStmtListGroupMaxElementsStmt {
max_elements_stmt: Box::new(max_elements_stmt),
};
let list_stmt_list_group_6_built =
ListStmtListGroup::MaxElementsStmt(list_stmt_list_group_6_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_7(&mut self, _ordered_by_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let ordered_by_stmt = pop_item!(self, ordered_by_stmt, OrderedByStmt, context);
let list_stmt_list_group_7_built = ListStmtListGroupOrderedByStmt {
ordered_by_stmt: Box::new(ordered_by_stmt),
};
let list_stmt_list_group_7_built =
ListStmtListGroup::OrderedByStmt(list_stmt_list_group_7_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_8(&mut self, _status_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let status_stmt = pop_item!(self, status_stmt, StatusStmt, context);
let list_stmt_list_group_8_built = ListStmtListGroupStatusStmt {
status_stmt: Box::new(status_stmt),
};
let list_stmt_list_group_8_built =
ListStmtListGroup::StatusStmt(list_stmt_list_group_8_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_8_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_9(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let list_stmt_list_group_9_built = ListStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let list_stmt_list_group_9_built =
ListStmtListGroup::DescriptionStmt(list_stmt_list_group_9_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_9_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_10(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let list_stmt_list_group_10_built = ListStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let list_stmt_list_group_10_built =
ListStmtListGroup::ReferenceStmt(list_stmt_list_group_10_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_10_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_11(&mut self, _data_def_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let data_def_stmt = pop_item!(self, data_def_stmt, DataDefStmt, context);
let list_stmt_list_group_11_built = ListStmtListGroupDataDefStmt {
data_def_stmt: Box::new(data_def_stmt),
};
let list_stmt_list_group_11_built =
ListStmtListGroup::DataDefStmt(list_stmt_list_group_11_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_11_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_12(&mut self, _action_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let action_stmt = pop_item!(self, action_stmt, ActionStmt, context);
let list_stmt_list_group_12_built = ListStmtListGroupActionStmt {
action_stmt: Box::new(action_stmt),
};
let list_stmt_list_group_12_built =
ListStmtListGroup::ActionStmt(list_stmt_list_group_12_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_12_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_13(&mut self, _notification_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let notification_stmt = pop_item!(self, notification_stmt, NotificationStmt, context);
let list_stmt_list_group_13_built = ListStmtListGroupNotificationStmt {
notification_stmt: Box::new(notification_stmt),
};
let list_stmt_list_group_13_built =
ListStmtListGroup::NotificationStmt(list_stmt_list_group_13_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_13_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_group_14(&mut self, _unknown_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let unknown_stmt = pop_item!(self, unknown_stmt, UnknownStmt, context);
let list_stmt_list_group_14_built = ListStmtListGroupUnknownStmt {
unknown_stmt: Box::new(unknown_stmt),
};
let list_stmt_list_group_14_built =
ListStmtListGroup::UnknownStmt(list_stmt_list_group_14_built);
self.push(
ASTType::ListStmtListGroup(list_stmt_list_group_14_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn list_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let list_stmt_list_1_built = Vec::new();
self.push(ASTType::ListStmtList(list_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn ordered_by_stmt(
&mut self,
_kw_ordered_by: &ParseTreeType<'t>,
_ordered_by_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let ordered_by_arg_str = pop_item!(self, ordered_by_arg_str, OrderedByArgStr, context);
self.pop(context);
let ordered_by_stmt_built = OrderedByStmt {
ordered_by_arg_str: Box::new(ordered_by_arg_str),
};
self.user_grammar.ordered_by_stmt(&ordered_by_stmt_built)?;
self.push(ASTType::OrderedByStmt(ordered_by_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn ordered_by_arg_str_0(&mut self, _ordered_by_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let ordered_by_arg = pop_item!(self, ordered_by_arg, OrderedByArg, context);
let ordered_by_arg_str_0_built = OrderedByArgStrOrderedByArg {
ordered_by_arg: Box::new(ordered_by_arg),
};
let ordered_by_arg_str_0_built = OrderedByArgStr::OrderedByArg(ordered_by_arg_str_0_built);
self.user_grammar
.ordered_by_arg_str(&ordered_by_arg_str_0_built)?;
self.push(
ASTType::OrderedByArgStr(ordered_by_arg_str_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn ordered_by_arg_str_1(
&mut self,
double_quotation: &ParseTreeType<'t>,
_ordered_by_arg: &ParseTreeType<'t>,
double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let double_quotation = double_quotation.token()?.clone();
let double_quotation0 = double_quotation0.token()?.clone();
let ordered_by_arg = pop_item!(self, ordered_by_arg, OrderedByArg, context);
let ordered_by_arg_str_1_built =
OrderedByArgStrDoubleQuotationOrderedByArgDoubleQuotation {
double_quotation,
ordered_by_arg: Box::new(ordered_by_arg),
double_quotation0,
};
let ordered_by_arg_str_1_built =
OrderedByArgStr::DoubleQuotationOrderedByArgDoubleQuotation(ordered_by_arg_str_1_built);
self.user_grammar
.ordered_by_arg_str(&ordered_by_arg_str_1_built)?;
self.push(
ASTType::OrderedByArgStr(ordered_by_arg_str_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn ordered_by_arg(&mut self, ordered_by_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let ordered_by_arg = ordered_by_arg.token()?.clone();
let ordered_by_arg_built = OrderedByArg { ordered_by_arg };
self.user_grammar.ordered_by_arg(&ordered_by_arg_built)?;
self.push(ASTType::OrderedByArg(ordered_by_arg_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn default_stmt(
&mut self,
_kw_default: &ParseTreeType<'t>,
_default_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let default_stmt_suffix = pop_item!(self, default_stmt_suffix, DefaultStmtSuffix, context);
self.pop(context);
let default_stmt_built = DefaultStmt {
default_stmt_suffix: Box::new(default_stmt_suffix),
};
self.user_grammar.default_stmt(&default_stmt_built)?;
self.push(ASTType::DefaultStmt(default_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn default_stmt_suffix_0(
&mut self,
_ascii_no_semicolon: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let ascii_no_semicolon = pop_item!(self, ascii_no_semicolon, AsciiNoSemicolon, context);
let default_stmt_suffix_0_built = DefaultStmtSuffixAsciiNoSemicolonSemicolon {
ascii_no_semicolon: Box::new(ascii_no_semicolon),
};
let default_stmt_suffix_0_built =
DefaultStmtSuffix::AsciiNoSemicolonSemicolon(default_stmt_suffix_0_built);
self.push(
ASTType::DefaultStmtSuffix(default_stmt_suffix_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn default_stmt_suffix_1(
&mut self,
double_quotation: &ParseTreeType<'t>,
_ascii_no_semicolon: &ParseTreeType<'t>,
double_quotation0: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let double_quotation = double_quotation.token()?.clone();
let double_quotation0 = double_quotation0.token()?.clone();
self.pop(context);
let ascii_no_semicolon = pop_item!(self, ascii_no_semicolon, AsciiNoSemicolon, context);
let default_stmt_suffix_1_built =
DefaultStmtSuffixDoubleQuotationAsciiNoSemicolonDoubleQuotationSemicolon {
double_quotation,
ascii_no_semicolon: Box::new(ascii_no_semicolon),
double_quotation0,
};
let default_stmt_suffix_1_built =
DefaultStmtSuffix::DoubleQuotationAsciiNoSemicolonDoubleQuotationSemicolon(
default_stmt_suffix_1_built,
);
self.push(
ASTType::DefaultStmtSuffix(default_stmt_suffix_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn max_elements_stmt(
&mut self,
_max_minus_elements: &ParseTreeType<'t>,
l_bracket1_minus9_r_bracket_l_bracket0_minus9_r_bracket_star: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let l_bracket1_minus9_r_bracket_l_bracket0_minus9_r_bracket_star =
l_bracket1_minus9_r_bracket_l_bracket0_minus9_r_bracket_star
.token()?
.clone();
self.pop(context);
let max_elements_stmt_built = MaxElementsStmt {
l_bracket1_minus9_r_bracket_l_bracket0_minus9_r_bracket_star,
};
self.user_grammar
.max_elements_stmt(&max_elements_stmt_built)?;
self.push(ASTType::MaxElementsStmt(max_elements_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn min_elements_stmt(
&mut self,
_min_minus_elements: &ParseTreeType<'t>,
l_bracket1_minus9_r_bracket_l_bracket0_minus9_r_bracket_star: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let l_bracket1_minus9_r_bracket_l_bracket0_minus9_r_bracket_star =
l_bracket1_minus9_r_bracket_l_bracket0_minus9_r_bracket_star
.token()?
.clone();
self.pop(context);
let min_elements_stmt_built = MinElementsStmt {
l_bracket1_minus9_r_bracket_l_bracket0_minus9_r_bracket_star,
};
self.user_grammar
.min_elements_stmt(&min_elements_stmt_built)?;
self.push(ASTType::MinElementsStmt(min_elements_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt(
&mut self,
_kw_type: &ParseTreeType<'t>,
_identifier_ref_arg_str: &ParseTreeType<'t>,
_type_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let type_stmt_suffix = pop_item!(self, type_stmt_suffix, TypeStmtSuffix, context);
let identifier_ref_arg_str =
pop_item!(self, identifier_ref_arg_str, IdentifierRefArgStr, context);
self.pop(context);
let type_stmt_built = TypeStmt {
identifier_ref_arg_str: Box::new(identifier_ref_arg_str),
type_stmt_suffix: Box::new(type_stmt_suffix),
};
self.user_grammar.type_stmt(&type_stmt_built)?;
self.push(ASTType::TypeStmt(type_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let type_stmt_suffix_0_built = TypeStmtSuffixSemicolon {};
let type_stmt_suffix_0_built = TypeStmtSuffix::Semicolon(type_stmt_suffix_0_built);
self.push(ASTType::TypeStmtSuffix(type_stmt_suffix_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_type_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let type_stmt_list = pop_and_reverse_item!(self, type_stmt_list, TypeStmtList, context);
self.pop(context);
let type_stmt_suffix_1_built = TypeStmtSuffixLBraceTypeStmtListRBrace { type_stmt_list };
let type_stmt_suffix_1_built =
TypeStmtSuffix::LBraceTypeStmtListRBrace(type_stmt_suffix_1_built);
self.push(ASTType::TypeStmtSuffix(type_stmt_suffix_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt_list_0(
&mut self,
_type_stmt_list_group: &ParseTreeType<'t>,
_type_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut type_stmt_list = pop_item!(self, type_stmt_list, TypeStmtList, context);
let type_stmt_list_group =
pop_item!(self, type_stmt_list_group, TypeStmtListGroup, context);
let type_stmt_list_0_built = TypeStmtList {
type_stmt_list_group: Box::new(type_stmt_list_group),
};
type_stmt_list.push(type_stmt_list_0_built);
self.push(ASTType::TypeStmtList(type_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt_list_group_0(&mut self, _fraction_digits_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let fraction_digits_stmt =
pop_item!(self, fraction_digits_stmt, FractionDigitsStmt, context);
let type_stmt_list_group_0_built = TypeStmtListGroupFractionDigitsStmt {
fraction_digits_stmt: Box::new(fraction_digits_stmt),
};
let type_stmt_list_group_0_built =
TypeStmtListGroup::FractionDigitsStmt(type_stmt_list_group_0_built);
self.push(
ASTType::TypeStmtListGroup(type_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt_list_group_1(&mut self, _enum_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let enum_stmt = pop_item!(self, enum_stmt, EnumStmt, context);
let type_stmt_list_group_1_built = TypeStmtListGroupEnumStmt {
enum_stmt: Box::new(enum_stmt),
};
let type_stmt_list_group_1_built =
TypeStmtListGroup::EnumStmt(type_stmt_list_group_1_built);
self.push(
ASTType::TypeStmtListGroup(type_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt_list_group_2(&mut self, _base_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let base_stmt = pop_item!(self, base_stmt, BaseStmt, context);
let type_stmt_list_group_2_built = TypeStmtListGroupBaseStmt {
base_stmt: Box::new(base_stmt),
};
let type_stmt_list_group_2_built =
TypeStmtListGroup::BaseStmt(type_stmt_list_group_2_built);
self.push(
ASTType::TypeStmtListGroup(type_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt_list_group_3(&mut self, _leafref_specification: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let leafref_specification =
pop_item!(self, leafref_specification, LeafrefSpecification, context);
let type_stmt_list_group_3_built = TypeStmtListGroupLeafrefSpecification {
leafref_specification: Box::new(leafref_specification),
};
let type_stmt_list_group_3_built =
TypeStmtListGroup::LeafrefSpecification(type_stmt_list_group_3_built);
self.push(
ASTType::TypeStmtListGroup(type_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt_list_group_4(&mut self, _string_restrictions: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let string_restrictions = pop_item!(self, string_restrictions, StringRestrictions, context);
let type_stmt_list_group_4_built = TypeStmtListGroupStringRestrictions {
string_restrictions: Box::new(string_restrictions),
};
let type_stmt_list_group_4_built =
TypeStmtListGroup::StringRestrictions(type_stmt_list_group_4_built);
self.push(
ASTType::TypeStmtListGroup(type_stmt_list_group_4_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt_list_group_5(&mut self, _range_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let range_stmt = pop_item!(self, range_stmt, RangeStmt, context);
let type_stmt_list_group_5_built = TypeStmtListGroupRangeStmt {
range_stmt: Box::new(range_stmt),
};
let type_stmt_list_group_5_built =
TypeStmtListGroup::RangeStmt(type_stmt_list_group_5_built);
self.push(
ASTType::TypeStmtListGroup(type_stmt_list_group_5_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt_list_group_6(&mut self, _bit_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let bit_stmt = pop_item!(self, bit_stmt, BitStmt, context);
let type_stmt_list_group_6_built = TypeStmtListGroupBitStmt {
bit_stmt: Box::new(bit_stmt),
};
let type_stmt_list_group_6_built = TypeStmtListGroup::BitStmt(type_stmt_list_group_6_built);
self.push(
ASTType::TypeStmtListGroup(type_stmt_list_group_6_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt_list_group_7(&mut self, _type_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let type_stmt = pop_item!(self, type_stmt, TypeStmt, context);
let type_stmt_list_group_7_built = TypeStmtListGroupTypeStmt {
type_stmt: Box::new(type_stmt),
};
let type_stmt_list_group_7_built =
TypeStmtListGroup::TypeStmt(type_stmt_list_group_7_built);
self.push(
ASTType::TypeStmtListGroup(type_stmt_list_group_7_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn type_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let type_stmt_list_1_built = Vec::new();
self.push(ASTType::TypeStmtList(type_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn fraction_digits_stmt(
&mut self,
_kw_fraction_digits: &ParseTreeType<'t>,
_fraction_digits_arg: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let fraction_digits_arg = pop_item!(self, fraction_digits_arg, FractionDigitsArg, context);
self.pop(context);
let fraction_digits_stmt_built = FractionDigitsStmt {
fraction_digits_arg: Box::new(fraction_digits_arg),
};
self.user_grammar
.fraction_digits_stmt(&fraction_digits_stmt_built)?;
self.push(
ASTType::FractionDigitsStmt(fraction_digits_stmt_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn fraction_digits_arg(&mut self, fraction_digits_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let fraction_digits_arg = fraction_digits_arg.token()?.clone();
let fraction_digits_arg_built = FractionDigitsArg {
fraction_digits_arg,
};
self.user_grammar
.fraction_digits_arg(&fraction_digits_arg_built)?;
self.push(
ASTType::FractionDigitsArg(fraction_digits_arg_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn bit_stmt(
&mut self,
_kw_bit: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_bit_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let bit_stmt_suffix = pop_item!(self, bit_stmt_suffix, BitStmtSuffix, context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let bit_stmt_built = BitStmt {
identifier_arg_str: Box::new(identifier_arg_str),
bit_stmt_suffix: Box::new(bit_stmt_suffix),
};
self.user_grammar.bit_stmt(&bit_stmt_built)?;
self.push(ASTType::BitStmt(bit_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn bit_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let bit_stmt_suffix_0_built = BitStmtSuffixSemicolon {};
let bit_stmt_suffix_0_built = BitStmtSuffix::Semicolon(bit_stmt_suffix_0_built);
self.push(ASTType::BitStmtSuffix(bit_stmt_suffix_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn bit_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_bit_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let bit_stmt_list = pop_and_reverse_item!(self, bit_stmt_list, BitStmtList, context);
self.pop(context);
let bit_stmt_suffix_1_built = BitStmtSuffixLBraceBitStmtListRBrace { bit_stmt_list };
let bit_stmt_suffix_1_built =
BitStmtSuffix::LBraceBitStmtListRBrace(bit_stmt_suffix_1_built);
self.push(ASTType::BitStmtSuffix(bit_stmt_suffix_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn bit_stmt_list_0(
&mut self,
_bit_stmt_list_group: &ParseTreeType<'t>,
_bit_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut bit_stmt_list = pop_item!(self, bit_stmt_list, BitStmtList, context);
let bit_stmt_list_group = pop_item!(self, bit_stmt_list_group, BitStmtListGroup, context);
let bit_stmt_list_0_built = BitStmtList {
bit_stmt_list_group: Box::new(bit_stmt_list_group),
};
bit_stmt_list.push(bit_stmt_list_0_built);
self.push(ASTType::BitStmtList(bit_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn bit_stmt_list_group_0(&mut self, _position_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let position_stmt = pop_item!(self, position_stmt, PositionStmt, context);
let bit_stmt_list_group_0_built = BitStmtListGroupPositionStmt {
position_stmt: Box::new(position_stmt),
};
let bit_stmt_list_group_0_built =
BitStmtListGroup::PositionStmt(bit_stmt_list_group_0_built);
self.push(
ASTType::BitStmtListGroup(bit_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn bit_stmt_list_group_1(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let bit_stmt_list_group_1_built = BitStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let bit_stmt_list_group_1_built =
BitStmtListGroup::DescriptionStmt(bit_stmt_list_group_1_built);
self.push(
ASTType::BitStmtListGroup(bit_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn bit_stmt_list_group_2(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let bit_stmt_list_group_2_built = BitStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let bit_stmt_list_group_2_built =
BitStmtListGroup::ReferenceStmt(bit_stmt_list_group_2_built);
self.push(
ASTType::BitStmtListGroup(bit_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn bit_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let bit_stmt_list_1_built = Vec::new();
self.push(ASTType::BitStmtList(bit_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn position_stmt(
&mut self,
_kw_position: &ParseTreeType<'t>,
_integer_value_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let integer_value_str = pop_item!(self, integer_value_str, IntegerValueStr, context);
self.pop(context);
let position_stmt_built = PositionStmt {
integer_value_str: Box::new(integer_value_str),
};
self.user_grammar.position_stmt(&position_stmt_built)?;
self.push(ASTType::PositionStmt(position_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn leafref_specification_0(&mut self, _path_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let path_stmt = pop_item!(self, path_stmt, PathStmt, context);
let leafref_specification_0_built = LeafrefSpecificationPathStmt {
path_stmt: Box::new(path_stmt),
};
let leafref_specification_0_built =
LeafrefSpecification::PathStmt(leafref_specification_0_built);
self.user_grammar
.leafref_specification(&leafref_specification_0_built)?;
self.push(
ASTType::LeafrefSpecification(leafref_specification_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn leafref_specification_1(
&mut self,
_require_instance_stmt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let require_instance_stmt =
pop_item!(self, require_instance_stmt, RequireInstanceStmt, context);
let leafref_specification_1_built = LeafrefSpecificationRequireInstanceStmt {
require_instance_stmt: Box::new(require_instance_stmt),
};
let leafref_specification_1_built =
LeafrefSpecification::RequireInstanceStmt(leafref_specification_1_built);
self.user_grammar
.leafref_specification(&leafref_specification_1_built)?;
self.push(
ASTType::LeafrefSpecification(leafref_specification_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn require_instance_stmt(
&mut self,
_kw_require_instance: &ParseTreeType<'t>,
_require_instance_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let semicolon = pop_item!(self, semicolon, Semicolon, context);
let require_instance_arg_str = pop_item!(
self,
require_instance_arg_str,
RequireInstanceArgStr,
context
);
self.pop(context);
let require_instance_stmt_built = RequireInstanceStmt {
require_instance_arg_str: Box::new(require_instance_arg_str),
semicolon: Box::new(semicolon),
};
self.user_grammar
.require_instance_stmt(&require_instance_stmt_built)?;
self.push(
ASTType::RequireInstanceStmt(require_instance_stmt_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn require_instance_arg_str_0(&mut self, _mandatory_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mandatory_arg = pop_item!(self, mandatory_arg, MandatoryArg, context);
let require_instance_arg_str_0_built = RequireInstanceArgStrMandatoryArg {
mandatory_arg: Box::new(mandatory_arg),
};
let require_instance_arg_str_0_built =
RequireInstanceArgStr::MandatoryArg(require_instance_arg_str_0_built);
self.user_grammar
.require_instance_arg_str(&require_instance_arg_str_0_built)?;
self.push(
ASTType::RequireInstanceArgStr(require_instance_arg_str_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn require_instance_arg_str_1(
&mut self,
double_quotation: &ParseTreeType<'t>,
_mandatory_arg: &ParseTreeType<'t>,
double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let double_quotation = double_quotation.token()?.clone();
let double_quotation0 = double_quotation0.token()?.clone();
let mandatory_arg = pop_item!(self, mandatory_arg, MandatoryArg, context);
let require_instance_arg_str_1_built =
RequireInstanceArgStrDoubleQuotationMandatoryArgDoubleQuotation {
double_quotation,
mandatory_arg: Box::new(mandatory_arg),
double_quotation0,
};
let require_instance_arg_str_1_built =
RequireInstanceArgStr::DoubleQuotationMandatoryArgDoubleQuotation(
require_instance_arg_str_1_built,
);
self.user_grammar
.require_instance_arg_str(&require_instance_arg_str_1_built)?;
self.push(
ASTType::RequireInstanceArgStr(require_instance_arg_str_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn path_stmt(
&mut self,
_path: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let ystring = pop_item!(self, ystring, Ystring, context);
let path_stmt_built = PathStmt {
ystring: Box::new(ystring),
};
self.user_grammar.path_stmt(&path_stmt_built)?;
self.push(ASTType::PathStmt(path_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn string_restrictions_0(&mut self, _length_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let length_stmt = pop_item!(self, length_stmt, LengthStmt, context);
let string_restrictions_0_built = StringRestrictionsLengthStmt {
length_stmt: Box::new(length_stmt),
};
let string_restrictions_0_built =
StringRestrictions::LengthStmt(string_restrictions_0_built);
self.user_grammar
.string_restrictions(&string_restrictions_0_built)?;
self.push(
ASTType::StringRestrictions(string_restrictions_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn string_restrictions_1(&mut self, _pattern_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let pattern_stmt = pop_item!(self, pattern_stmt, PatternStmt, context);
let string_restrictions_1_built = StringRestrictionsPatternStmt {
pattern_stmt: Box::new(pattern_stmt),
};
let string_restrictions_1_built =
StringRestrictions::PatternStmt(string_restrictions_1_built);
self.user_grammar
.string_restrictions(&string_restrictions_1_built)?;
self.push(
ASTType::StringRestrictions(string_restrictions_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn pattern_stmt(
&mut self,
pattern: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let pattern = pattern.token()?.clone();
let semicolon = pop_item!(self, semicolon, Semicolon, context);
let ystring = pop_item!(self, ystring, Ystring, context);
let pattern_stmt_built = PatternStmt {
pattern,
ystring: Box::new(ystring),
semicolon: Box::new(semicolon),
};
self.user_grammar.pattern_stmt(&pattern_stmt_built)?;
self.push(ASTType::PatternStmt(pattern_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn length_stmt(
&mut self,
_kw_length: &ParseTreeType<'t>,
_range_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let range_arg_str = pop_item!(self, range_arg_str, RangeArgStr, context);
self.pop(context);
let length_stmt_built = LengthStmt {
range_arg_str: Box::new(range_arg_str),
};
self.user_grammar.length_stmt(&length_stmt_built)?;
self.push(ASTType::LengthStmt(length_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn enum_stmt(
&mut self,
_kw_enum: &ParseTreeType<'t>,
_enum_arg_str: &ParseTreeType<'t>,
_enum_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let enum_stmt_suffix = pop_item!(self, enum_stmt_suffix, EnumStmtSuffix, context);
let enum_arg_str = pop_item!(self, enum_arg_str, EnumArgStr, context);
self.pop(context);
let enum_stmt_built = EnumStmt {
enum_arg_str: Box::new(enum_arg_str),
enum_stmt_suffix: Box::new(enum_stmt_suffix),
};
self.user_grammar.enum_stmt(&enum_stmt_built)?;
self.push(ASTType::EnumStmt(enum_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn enum_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let enum_stmt_suffix_0_built = EnumStmtSuffixSemicolon {};
let enum_stmt_suffix_0_built = EnumStmtSuffix::Semicolon(enum_stmt_suffix_0_built);
self.push(ASTType::EnumStmtSuffix(enum_stmt_suffix_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn enum_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_enum_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let enum_stmt_list = pop_and_reverse_item!(self, enum_stmt_list, EnumStmtList, context);
self.pop(context);
let enum_stmt_suffix_1_built = EnumStmtSuffixLBraceEnumStmtListRBrace { enum_stmt_list };
let enum_stmt_suffix_1_built =
EnumStmtSuffix::LBraceEnumStmtListRBrace(enum_stmt_suffix_1_built);
self.push(ASTType::EnumStmtSuffix(enum_stmt_suffix_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn enum_stmt_list_0(
&mut self,
_enum_stmt_list_group: &ParseTreeType<'t>,
_enum_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut enum_stmt_list = pop_item!(self, enum_stmt_list, EnumStmtList, context);
let enum_stmt_list_group =
pop_item!(self, enum_stmt_list_group, EnumStmtListGroup, context);
let enum_stmt_list_0_built = EnumStmtList {
enum_stmt_list_group: Box::new(enum_stmt_list_group),
};
enum_stmt_list.push(enum_stmt_list_0_built);
self.push(ASTType::EnumStmtList(enum_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn enum_stmt_list_group_0(&mut self, _if_feature_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let if_feature_stmt = pop_item!(self, if_feature_stmt, IfFeatureStmt, context);
let enum_stmt_list_group_0_built = EnumStmtListGroupIfFeatureStmt {
if_feature_stmt: Box::new(if_feature_stmt),
};
let enum_stmt_list_group_0_built =
EnumStmtListGroup::IfFeatureStmt(enum_stmt_list_group_0_built);
self.push(
ASTType::EnumStmtListGroup(enum_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn enum_stmt_list_group_1(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let enum_stmt_list_group_1_built = EnumStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let enum_stmt_list_group_1_built =
EnumStmtListGroup::DescriptionStmt(enum_stmt_list_group_1_built);
self.push(
ASTType::EnumStmtListGroup(enum_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn enum_stmt_list_group_2(&mut self, _value_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let value_stmt = pop_item!(self, value_stmt, ValueStmt, context);
let enum_stmt_list_group_2_built = EnumStmtListGroupValueStmt {
value_stmt: Box::new(value_stmt),
};
let enum_stmt_list_group_2_built =
EnumStmtListGroup::ValueStmt(enum_stmt_list_group_2_built);
self.push(
ASTType::EnumStmtListGroup(enum_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn enum_stmt_list_group_3(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let enum_stmt_list_group_3_built = EnumStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let enum_stmt_list_group_3_built =
EnumStmtListGroup::ReferenceStmt(enum_stmt_list_group_3_built);
self.push(
ASTType::EnumStmtListGroup(enum_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn enum_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let enum_stmt_list_1_built = Vec::new();
self.push(ASTType::EnumStmtList(enum_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn value_stmt(
&mut self,
_kw_value: &ParseTreeType<'t>,
_integer_value_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let integer_value_str = pop_item!(self, integer_value_str, IntegerValueStr, context);
self.pop(context);
let value_stmt_built = ValueStmt {
integer_value_str: Box::new(integer_value_str),
};
self.user_grammar.value_stmt(&value_stmt_built)?;
self.push(ASTType::ValueStmt(value_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn integer_value_str_0(&mut self, _integer_value: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let integer_value = pop_item!(self, integer_value, IntegerValue, context);
let integer_value_str_0_built = IntegerValueStrIntegerValue {
integer_value: Box::new(integer_value),
};
let integer_value_str_0_built = IntegerValueStr::IntegerValue(integer_value_str_0_built);
self.user_grammar
.integer_value_str(&integer_value_str_0_built)?;
self.push(ASTType::IntegerValueStr(integer_value_str_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn integer_value_str_1(
&mut self,
double_quotation: &ParseTreeType<'t>,
_integer_value: &ParseTreeType<'t>,
double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let double_quotation = double_quotation.token()?.clone();
let double_quotation0 = double_quotation0.token()?.clone();
let integer_value = pop_item!(self, integer_value, IntegerValue, context);
let integer_value_str_1_built = IntegerValueStrDoubleQuotationIntegerValueDoubleQuotation {
double_quotation,
integer_value: Box::new(integer_value),
double_quotation0,
};
let integer_value_str_1_built =
IntegerValueStr::DoubleQuotationIntegerValueDoubleQuotation(integer_value_str_1_built);
self.user_grammar
.integer_value_str(&integer_value_str_1_built)?;
self.push(ASTType::IntegerValueStr(integer_value_str_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn integer_value(&mut self, integer_value: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let integer_value = integer_value.token()?.clone();
let integer_value_built = IntegerValue { integer_value };
self.user_grammar.integer_value(&integer_value_built)?;
self.push(ASTType::IntegerValue(integer_value_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn enum_arg_str_0(&mut self, _ascii_no_brace: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let ascii_no_brace = pop_item!(self, ascii_no_brace, AsciiNoBrace, context);
let enum_arg_str_0_built = EnumArgStrAsciiNoBrace {
ascii_no_brace: Box::new(ascii_no_brace),
};
let enum_arg_str_0_built = EnumArgStr::AsciiNoBrace(enum_arg_str_0_built);
self.user_grammar.enum_arg_str(&enum_arg_str_0_built)?;
self.push(ASTType::EnumArgStr(enum_arg_str_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn enum_arg_str_1(
&mut self,
_double_quotation: &ParseTreeType<'t>,
_ascii_no_brace: &ParseTreeType<'t>,
_double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let ascii_no_brace = pop_item!(self, ascii_no_brace, AsciiNoBrace, context);
let enum_arg_str_1_built = EnumArgStrDoubleQuotationAsciiNoBraceDoubleQuotation {
ascii_no_brace: Box::new(ascii_no_brace),
};
let enum_arg_str_1_built =
EnumArgStr::DoubleQuotationAsciiNoBraceDoubleQuotation(enum_arg_str_1_built);
self.user_grammar.enum_arg_str(&enum_arg_str_1_built)?;
self.push(ASTType::EnumArgStr(enum_arg_str_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn range_stmt(
&mut self,
_kw_range: &ParseTreeType<'t>,
_range_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let range_arg_str = pop_item!(self, range_arg_str, RangeArgStr, context);
self.pop(context);
let range_stmt_built = RangeStmt {
range_arg_str: Box::new(range_arg_str),
};
self.user_grammar.range_stmt(&range_stmt_built)?;
self.push(ASTType::RangeStmt(range_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn range_arg_str_0(&mut self, _range_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let range_arg = pop_item!(self, range_arg, RangeArg, context);
let range_arg_str_0_built = RangeArgStrRangeArg {
range_arg: Box::new(range_arg),
};
let range_arg_str_0_built = RangeArgStr::RangeArg(range_arg_str_0_built);
self.user_grammar.range_arg_str(&range_arg_str_0_built)?;
self.push(ASTType::RangeArgStr(range_arg_str_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn range_arg_str_1(
&mut self,
_double_quotation: &ParseTreeType<'t>,
_range_arg: &ParseTreeType<'t>,
_double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let range_arg = pop_item!(self, range_arg, RangeArg, context);
let range_arg_str_1_built = RangeArgStrDoubleQuotationRangeArgDoubleQuotation {
range_arg: Box::new(range_arg),
};
let range_arg_str_1_built =
RangeArgStr::DoubleQuotationRangeArgDoubleQuotation(range_arg_str_1_built);
self.user_grammar.range_arg_str(&range_arg_str_1_built)?;
self.push(ASTType::RangeArgStr(range_arg_str_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn range_arg(
&mut self,
_range_part: &ParseTreeType<'t>,
_range_arg_opt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let range_arg_opt = pop_item!(self, range_arg_opt, RangeArgOpt, context);
let range_part = pop_item!(self, range_part, RangePart, context);
let range_arg_built = RangeArg {
range_part: Box::new(range_part),
range_arg_opt,
};
self.user_grammar.range_arg(&range_arg_built)?;
self.push(ASTType::RangeArg(range_arg_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn range_arg_opt_0(
&mut self,
or: &ParseTreeType<'t>,
_range_arg: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let or = or.token()?.clone();
let range_arg = pop_item!(self, range_arg, RangeArg, context);
let range_arg_opt_0_built = RangeArgOpt {
or,
range_arg: Box::new(range_arg),
};
self.push(ASTType::RangeArgOpt(Some(range_arg_opt_0_built)), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn range_arg_opt_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.push(ASTType::RangeArgOpt(None), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn range_part(
&mut self,
_range_boundary: &ParseTreeType<'t>,
_range_part_opt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let range_part_opt = pop_item!(self, range_part_opt, RangePartOpt, context);
let range_boundary = pop_item!(self, range_boundary, RangeBoundary, context);
let range_part_built = RangePart {
range_boundary: Box::new(range_boundary),
range_part_opt,
};
self.user_grammar.range_part(&range_part_built)?;
self.push(ASTType::RangePart(range_part_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn range_part_opt_0(
&mut self,
dot_dot: &ParseTreeType<'t>,
_range_boundary: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let dot_dot = dot_dot.token()?.clone();
let range_boundary = pop_item!(self, range_boundary, RangeBoundary, context);
let range_part_opt_0_built = RangePartOpt {
dot_dot,
range_boundary: Box::new(range_boundary),
};
self.push(ASTType::RangePartOpt(Some(range_part_opt_0_built)), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn range_part_opt_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.push(ASTType::RangePartOpt(None), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn range_boundary_0(&mut self, min: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let min = min.token()?.clone();
let range_boundary_0_built = RangeBoundaryMin { min };
let range_boundary_0_built = RangeBoundary::Min(range_boundary_0_built);
self.user_grammar.range_boundary(&range_boundary_0_built)?;
self.push(ASTType::RangeBoundary(range_boundary_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn range_boundary_1(&mut self, max: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let max = max.token()?.clone();
let range_boundary_1_built = RangeBoundaryMax { max };
let range_boundary_1_built = RangeBoundary::Max(range_boundary_1_built);
self.user_grammar.range_boundary(&range_boundary_1_built)?;
self.push(ASTType::RangeBoundary(range_boundary_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn range_boundary_2(
&mut self,
minus_quest_l_bracket0_minus9_r_bracket_plus: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let minus_quest_l_bracket0_minus9_r_bracket_plus =
minus_quest_l_bracket0_minus9_r_bracket_plus
.token()?
.clone();
let range_boundary_2_built = RangeBoundaryMinusQuestLBracket0Minus9RBracketPlus {
minus_quest_l_bracket0_minus9_r_bracket_plus,
};
let range_boundary_2_built =
RangeBoundary::MinusQuestLBracket0Minus9RBracketPlus(range_boundary_2_built);
self.user_grammar.range_boundary(&range_boundary_2_built)?;
self.push(ASTType::RangeBoundary(range_boundary_2_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn identifier_ref_arg_str_0(&mut self, _identifier_ref: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let identifier_ref = pop_item!(self, identifier_ref, IdentifierRef, context);
let identifier_ref_arg_str_0_built = IdentifierRefArgStrIdentifierRef {
identifier_ref: Box::new(identifier_ref),
};
let identifier_ref_arg_str_0_built =
IdentifierRefArgStr::IdentifierRef(identifier_ref_arg_str_0_built);
self.user_grammar
.identifier_ref_arg_str(&identifier_ref_arg_str_0_built)?;
self.push(
ASTType::IdentifierRefArgStr(identifier_ref_arg_str_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn identifier_ref_arg_str_1(
&mut self,
double_quotation: &ParseTreeType<'t>,
_identifier_ref: &ParseTreeType<'t>,
double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let double_quotation = double_quotation.token()?.clone();
let double_quotation0 = double_quotation0.token()?.clone();
let identifier_ref = pop_item!(self, identifier_ref, IdentifierRef, context);
let identifier_ref_arg_str_1_built =
IdentifierRefArgStrDoubleQuotationIdentifierRefDoubleQuotation {
double_quotation,
identifier_ref: Box::new(identifier_ref),
double_quotation0,
};
let identifier_ref_arg_str_1_built =
IdentifierRefArgStr::DoubleQuotationIdentifierRefDoubleQuotation(
identifier_ref_arg_str_1_built,
);
self.user_grammar
.identifier_ref_arg_str(&identifier_ref_arg_str_1_built)?;
self.push(
ASTType::IdentifierRefArgStr(identifier_ref_arg_str_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn identifier_ref(
&mut self,
_identifier_ref_opt: &ParseTreeType<'t>,
_identifier: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let identifier = pop_item!(self, identifier, Identifier, context);
let identifier_ref_opt = pop_item!(self, identifier_ref_opt, IdentifierRefOpt, context);
let identifier_ref_built = IdentifierRef {
identifier_ref_opt,
identifier: Box::new(identifier),
};
self.user_grammar.identifier_ref(&identifier_ref_built)?;
self.push(ASTType::IdentifierRef(identifier_ref_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn identifier_ref_opt_0(
&mut self,
_identifier: &ParseTreeType<'t>,
colon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let colon = colon.token()?.clone();
let identifier = pop_item!(self, identifier, Identifier, context);
let identifier_ref_opt_0_built = IdentifierRefOpt {
identifier: Box::new(identifier),
colon,
};
self.push(
ASTType::IdentifierRefOpt(Some(identifier_ref_opt_0_built)),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn identifier_ref_opt_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.push(ASTType::IdentifierRefOpt(None), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn key_stmt(
&mut self,
_kw_key: &ParseTreeType<'t>,
_key_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let key_arg_str = pop_item!(self, key_arg_str, KeyArgStr, context);
self.pop(context);
let key_stmt_built = KeyStmt {
key_arg_str: Box::new(key_arg_str),
};
self.user_grammar.key_stmt(&key_stmt_built)?;
self.push(ASTType::KeyStmt(key_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn key_arg_str_0(&mut self, _key_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let key_arg = pop_item!(self, key_arg, KeyArg, context);
let key_arg_str_0_built = KeyArgStrKeyArg {
key_arg: Box::new(key_arg),
};
let key_arg_str_0_built = KeyArgStr::KeyArg(key_arg_str_0_built);
self.user_grammar.key_arg_str(&key_arg_str_0_built)?;
self.push(ASTType::KeyArgStr(key_arg_str_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn key_arg_str_1(
&mut self,
_double_quotation: &ParseTreeType<'t>,
_key_arg: &ParseTreeType<'t>,
_double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let key_arg = pop_item!(self, key_arg, KeyArg, context);
let key_arg_str_1_built = KeyArgStrDoubleQuotationKeyArgDoubleQuotation {
key_arg: Box::new(key_arg),
};
let key_arg_str_1_built =
KeyArgStr::DoubleQuotationKeyArgDoubleQuotation(key_arg_str_1_built);
self.user_grammar.key_arg_str(&key_arg_str_1_built)?;
self.push(ASTType::KeyArgStr(key_arg_str_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn semicolon(&mut self, semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let semicolon = semicolon.token()?.clone();
let semicolon_built = Semicolon { semicolon };
self.user_grammar.semicolon(&semicolon_built)?;
self.push(ASTType::Semicolon(semicolon_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn key_arg(
&mut self,
_identifier_ref: &ParseTreeType<'t>,
_key_arg_opt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let key_arg_opt = pop_item!(self, key_arg_opt, KeyArgOpt, context);
let identifier_ref = pop_item!(self, identifier_ref, IdentifierRef, context);
let key_arg_built = KeyArg {
identifier_ref: Box::new(identifier_ref),
key_arg_opt,
};
self.user_grammar.key_arg(&key_arg_built)?;
self.push(ASTType::KeyArg(key_arg_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn key_arg_opt_0(&mut self, _key_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let key_arg = pop_item!(self, key_arg, KeyArg, context);
let key_arg_opt_0_built = KeyArgOpt {
key_arg: Box::new(key_arg),
};
self.push(ASTType::KeyArgOpt(Some(key_arg_opt_0_built)), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn key_arg_opt_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.push(ASTType::KeyArgOpt(None), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn absolute_schema_nodeid(
&mut self,
slash: &ParseTreeType<'t>,
_identifier_ref: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let slash = slash.token()?.clone();
let identifier_ref = pop_item!(self, identifier_ref, IdentifierRef, context);
let absolute_schema_nodeid_built = AbsoluteSchemaNodeid {
slash,
identifier_ref: Box::new(identifier_ref),
};
self.user_grammar
.absolute_schema_nodeid(&absolute_schema_nodeid_built)?;
self.push(
ASTType::AbsoluteSchemaNodeid(absolute_schema_nodeid_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn import_stmt(
&mut self,
_kw_import: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_import_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let import_stmt_list =
pop_and_reverse_item!(self, import_stmt_list, ImportStmtList, context);
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let import_stmt_built = ImportStmt {
identifier_arg_str: Box::new(identifier_arg_str),
import_stmt_list,
};
self.user_grammar.import_stmt(&import_stmt_built)?;
self.push(ASTType::ImportStmt(import_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn import_stmt_list_0(
&mut self,
_import_stmt_list_group: &ParseTreeType<'t>,
_import_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut import_stmt_list = pop_item!(self, import_stmt_list, ImportStmtList, context);
let import_stmt_list_group =
pop_item!(self, import_stmt_list_group, ImportStmtListGroup, context);
let import_stmt_list_0_built = ImportStmtList {
import_stmt_list_group: Box::new(import_stmt_list_group),
};
import_stmt_list.push(import_stmt_list_0_built);
self.push(ASTType::ImportStmtList(import_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn import_stmt_list_group_0(&mut self, _prefix_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let prefix_stmt = pop_item!(self, prefix_stmt, PrefixStmt, context);
let import_stmt_list_group_0_built = ImportStmtListGroupPrefixStmt {
prefix_stmt: Box::new(prefix_stmt),
};
let import_stmt_list_group_0_built =
ImportStmtListGroup::PrefixStmt(import_stmt_list_group_0_built);
self.push(
ASTType::ImportStmtListGroup(import_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn import_stmt_list_group_1(&mut self, _revision_date_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let revision_date_stmt = pop_item!(self, revision_date_stmt, RevisionDateStmt, context);
let import_stmt_list_group_1_built = ImportStmtListGroupRevisionDateStmt {
revision_date_stmt: Box::new(revision_date_stmt),
};
let import_stmt_list_group_1_built =
ImportStmtListGroup::RevisionDateStmt(import_stmt_list_group_1_built);
self.push(
ASTType::ImportStmtListGroup(import_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn import_stmt_list_group_2(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let import_stmt_list_group_2_built = ImportStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let import_stmt_list_group_2_built =
ImportStmtListGroup::DescriptionStmt(import_stmt_list_group_2_built);
self.push(
ASTType::ImportStmtListGroup(import_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn import_stmt_list_group_3(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let import_stmt_list_group_3_built = ImportStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let import_stmt_list_group_3_built =
ImportStmtListGroup::ReferenceStmt(import_stmt_list_group_3_built);
self.push(
ASTType::ImportStmtListGroup(import_stmt_list_group_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn import_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let import_stmt_list_1_built = Vec::new();
self.push(ASTType::ImportStmtList(import_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn include_stmt(
&mut self,
_kw_include: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_include_stmt_suffix: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let include_stmt_suffix = pop_item!(self, include_stmt_suffix, IncludeStmtSuffix, context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let include_stmt_built = IncludeStmt {
identifier_arg_str: Box::new(identifier_arg_str),
include_stmt_suffix: Box::new(include_stmt_suffix),
};
self.user_grammar.include_stmt(&include_stmt_built)?;
self.push(ASTType::IncludeStmt(include_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn include_stmt_suffix_0(&mut self, _semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let include_stmt_suffix_0_built = IncludeStmtSuffixSemicolon {};
let include_stmt_suffix_0_built = IncludeStmtSuffix::Semicolon(include_stmt_suffix_0_built);
self.push(
ASTType::IncludeStmtSuffix(include_stmt_suffix_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn include_stmt_suffix_1(
&mut self,
_l_brace: &ParseTreeType<'t>,
_include_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let include_stmt_list =
pop_and_reverse_item!(self, include_stmt_list, IncludeStmtList, context);
self.pop(context);
let include_stmt_suffix_1_built =
IncludeStmtSuffixLBraceIncludeStmtListRBrace { include_stmt_list };
let include_stmt_suffix_1_built =
IncludeStmtSuffix::LBraceIncludeStmtListRBrace(include_stmt_suffix_1_built);
self.push(
ASTType::IncludeStmtSuffix(include_stmt_suffix_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn include_stmt_list_0(
&mut self,
_include_stmt_list_group: &ParseTreeType<'t>,
_include_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut include_stmt_list = pop_item!(self, include_stmt_list, IncludeStmtList, context);
let include_stmt_list_group =
pop_item!(self, include_stmt_list_group, IncludeStmtListGroup, context);
let include_stmt_list_0_built = IncludeStmtList {
include_stmt_list_group: Box::new(include_stmt_list_group),
};
include_stmt_list.push(include_stmt_list_0_built);
self.push(ASTType::IncludeStmtList(include_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn include_stmt_list_group_0(&mut self, _revision_date_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let revision_date_stmt = pop_item!(self, revision_date_stmt, RevisionDateStmt, context);
let include_stmt_list_group_0_built = IncludeStmtListGroupRevisionDateStmt {
revision_date_stmt: Box::new(revision_date_stmt),
};
let include_stmt_list_group_0_built =
IncludeStmtListGroup::RevisionDateStmt(include_stmt_list_group_0_built);
self.push(
ASTType::IncludeStmtListGroup(include_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn include_stmt_list_group_1(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let include_stmt_list_group_1_built = IncludeStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let include_stmt_list_group_1_built =
IncludeStmtListGroup::DescriptionStmt(include_stmt_list_group_1_built);
self.push(
ASTType::IncludeStmtListGroup(include_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn include_stmt_list_group_2(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let include_stmt_list_group_2_built = IncludeStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let include_stmt_list_group_2_built =
IncludeStmtListGroup::ReferenceStmt(include_stmt_list_group_2_built);
self.push(
ASTType::IncludeStmtListGroup(include_stmt_list_group_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn include_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let include_stmt_list_1_built = Vec::new();
self.push(ASTType::IncludeStmtList(include_stmt_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn revision_date_stmt(
&mut self,
_kw_revision_date: &ParseTreeType<'t>,
_date_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let date_arg_str = pop_item!(self, date_arg_str, DateArgStr, context);
self.pop(context);
let revision_date_stmt_built = RevisionDateStmt {
date_arg_str: Box::new(date_arg_str),
};
self.user_grammar
.revision_date_stmt(&revision_date_stmt_built)?;
self.push(ASTType::RevisionDateStmt(revision_date_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn namespace_stmt(
&mut self,
_kw_namespace: &ParseTreeType<'t>,
_uri_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let uri_str = pop_item!(self, uri_str, UriStr, context);
self.pop(context);
let namespace_stmt_built = NamespaceStmt {
uri_str: Box::new(uri_str),
};
self.user_grammar.namespace_stmt(&namespace_stmt_built)?;
self.push(ASTType::NamespaceStmt(namespace_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn uri_str_0(&mut self, _uri_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let uri_arg = pop_item!(self, uri_arg, UriArg, context);
let uri_str_0_built = UriStrUriArg {
uri_arg: Box::new(uri_arg),
};
let uri_str_0_built = UriStr::UriArg(uri_str_0_built);
self.user_grammar.uri_str(&uri_str_0_built)?;
self.push(ASTType::UriStr(uri_str_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn uri_str_1(
&mut self,
_double_quotation: &ParseTreeType<'t>,
_uri_arg: &ParseTreeType<'t>,
_double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let uri_arg = pop_item!(self, uri_arg, UriArg, context);
let uri_str_1_built = UriStrDoubleQuotationUriArgDoubleQuotation {
uri_arg: Box::new(uri_arg),
};
let uri_str_1_built = UriStr::DoubleQuotationUriArgDoubleQuotation(uri_str_1_built);
self.user_grammar.uri_str(&uri_str_1_built)?;
self.push(ASTType::UriStr(uri_str_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn uri_arg(&mut self, uri_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let uri_arg = uri_arg.token()?.clone();
let uri_arg_built = UriArg { uri_arg };
self.user_grammar.uri_arg(&uri_arg_built)?;
self.push(ASTType::UriArg(uri_arg_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn prefix_stmt(
&mut self,
_kw_prefix: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let prefix_stmt_built = PrefixStmt {
identifier_arg_str: Box::new(identifier_arg_str),
};
self.user_grammar.prefix_stmt(&prefix_stmt_built)?;
self.push(ASTType::PrefixStmt(prefix_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn belongs_to_stmt(
&mut self,
_kw_belongs_to: &ParseTreeType<'t>,
_identifier_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_prefix_stmt: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let prefix_stmt = pop_item!(self, prefix_stmt, PrefixStmt, context);
self.pop(context);
let identifier_arg_str = pop_item!(self, identifier_arg_str, IdentifierArgStr, context);
self.pop(context);
let belongs_to_stmt_built = BelongsToStmt {
identifier_arg_str: Box::new(identifier_arg_str),
prefix_stmt: Box::new(prefix_stmt),
};
self.user_grammar.belongs_to_stmt(&belongs_to_stmt_built)?;
self.push(ASTType::BelongsToStmt(belongs_to_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn organization_stmt(
&mut self,
_organization: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let semicolon = pop_item!(self, semicolon, Semicolon, context);
let ystring = pop_item!(self, ystring, Ystring, context);
let organization_stmt_built = OrganizationStmt {
ystring: Box::new(ystring),
semicolon: Box::new(semicolon),
};
self.user_grammar
.organization_stmt(&organization_stmt_built)?;
self.push(ASTType::OrganizationStmt(organization_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn contact_stmt(
&mut self,
_contact: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let semicolon = pop_item!(self, semicolon, Semicolon, context);
let ystring = pop_item!(self, ystring, Ystring, context);
let contact_stmt_built = ContactStmt {
ystring: Box::new(ystring),
semicolon: Box::new(semicolon),
};
self.user_grammar.contact_stmt(&contact_stmt_built)?;
self.push(ASTType::ContactStmt(contact_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn description_stmt(
&mut self,
_description: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let ystring = pop_item!(self, ystring, Ystring, context);
let description_stmt_built = DescriptionStmt {
ystring: Box::new(ystring),
};
self.user_grammar
.description_stmt(&description_stmt_built)?;
self.push(ASTType::DescriptionStmt(description_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn reference_stmt(
&mut self,
_reference: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
_semicolon: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let ystring = pop_item!(self, ystring, Ystring, context);
let reference_stmt_built = ReferenceStmt {
ystring: Box::new(ystring),
};
self.user_grammar.reference_stmt(&reference_stmt_built)?;
self.push(ASTType::ReferenceStmt(reference_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn revision_stmt(
&mut self,
_kw_revision: &ParseTreeType<'t>,
_date_arg_str: &ParseTreeType<'t>,
_l_brace: &ParseTreeType<'t>,
_revision_stmt_list: &ParseTreeType<'t>,
_r_brace: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let revision_stmt_list =
pop_and_reverse_item!(self, revision_stmt_list, RevisionStmtList, context);
self.pop(context);
let date_arg_str = pop_item!(self, date_arg_str, DateArgStr, context);
self.pop(context);
let revision_stmt_built = RevisionStmt {
date_arg_str: Box::new(date_arg_str),
revision_stmt_list,
};
self.user_grammar.revision_stmt(&revision_stmt_built)?;
self.push(ASTType::RevisionStmt(revision_stmt_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn revision_stmt_list_0(
&mut self,
_revision_stmt_list_group: &ParseTreeType<'t>,
_revision_stmt_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut revision_stmt_list = pop_item!(self, revision_stmt_list, RevisionStmtList, context);
let revision_stmt_list_group = pop_item!(
self,
revision_stmt_list_group,
RevisionStmtListGroup,
context
);
let revision_stmt_list_0_built = RevisionStmtList {
revision_stmt_list_group: Box::new(revision_stmt_list_group),
};
revision_stmt_list.push(revision_stmt_list_0_built);
self.push(ASTType::RevisionStmtList(revision_stmt_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn revision_stmt_list_group_0(&mut self, _description_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let description_stmt = pop_item!(self, description_stmt, DescriptionStmt, context);
let revision_stmt_list_group_0_built = RevisionStmtListGroupDescriptionStmt {
description_stmt: Box::new(description_stmt),
};
let revision_stmt_list_group_0_built =
RevisionStmtListGroup::DescriptionStmt(revision_stmt_list_group_0_built);
self.push(
ASTType::RevisionStmtListGroup(revision_stmt_list_group_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn revision_stmt_list_group_1(&mut self, _reference_stmt: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let reference_stmt = pop_item!(self, reference_stmt, ReferenceStmt, context);
let revision_stmt_list_group_1_built = RevisionStmtListGroupReferenceStmt {
reference_stmt: Box::new(reference_stmt),
};
let revision_stmt_list_group_1_built =
RevisionStmtListGroup::ReferenceStmt(revision_stmt_list_group_1_built);
self.push(
ASTType::RevisionStmtListGroup(revision_stmt_list_group_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn revision_stmt_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let revision_stmt_list_1_built = Vec::new();
self.push(
ASTType::RevisionStmtList(revision_stmt_list_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn date_arg_str_0(&mut self, _date_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let date_arg = pop_item!(self, date_arg, DateArg, context);
let date_arg_str_0_built = DateArgStrDateArg {
date_arg: Box::new(date_arg),
};
let date_arg_str_0_built = DateArgStr::DateArg(date_arg_str_0_built);
self.user_grammar.date_arg_str(&date_arg_str_0_built)?;
self.push(ASTType::DateArgStr(date_arg_str_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn date_arg_str_1(
&mut self,
_double_quotation: &ParseTreeType<'t>,
_date_arg: &ParseTreeType<'t>,
_double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let date_arg = pop_item!(self, date_arg, DateArg, context);
let date_arg_str_1_built = DateArgStrDoubleQuotationDateArgDoubleQuotation {
date_arg: Box::new(date_arg),
};
let date_arg_str_1_built =
DateArgStr::DoubleQuotationDateArgDoubleQuotation(date_arg_str_1_built);
self.user_grammar.date_arg_str(&date_arg_str_1_built)?;
self.push(ASTType::DateArgStr(date_arg_str_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn date_arg(&mut self, date_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let date_arg = date_arg.token()?.clone();
let date_arg_built = DateArg { date_arg };
self.user_grammar.date_arg(&date_arg_built)?;
self.push(ASTType::DateArg(date_arg_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn ystring_0(
&mut self,
_basic_string: &ParseTreeType<'t>,
_ystring_opt: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let ystring_opt = pop_item!(self, ystring_opt, YstringOpt, context);
let basic_string = pop_item!(self, basic_string, BasicString, context);
let ystring_0_built = YstringBasicStringYstringOpt {
basic_string: Box::new(basic_string),
ystring_opt,
};
let ystring_0_built = Ystring::BasicStringYstringOpt(ystring_0_built);
self.user_grammar.ystring(&ystring_0_built)?;
self.push(ASTType::Ystring(ystring_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn ystring_1(&mut self, _identifier: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let identifier = pop_item!(self, identifier, Identifier, context);
let ystring_1_built = YstringIdentifier {
identifier: Box::new(identifier),
};
let ystring_1_built = Ystring::Identifier(ystring_1_built);
self.user_grammar.ystring(&ystring_1_built)?;
self.push(ASTType::Ystring(ystring_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn ystring_opt_0(
&mut self,
plus: &ParseTreeType<'t>,
_ystring: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let plus = plus.token()?.clone();
let ystring = pop_item!(self, ystring, Ystring, context);
let ystring_opt_0_built = YstringOpt {
plus,
ystring: Box::new(ystring),
};
self.push(ASTType::YstringOpt(Some(ystring_opt_0_built)), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn ystring_opt_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.push(ASTType::YstringOpt(None), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn basic_string_0(&mut self, _d_q_string: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let d_q_string = pop_item!(self, d_q_string, DQString, context);
let basic_string_0_built = BasicStringDQString {
d_q_string: Box::new(d_q_string),
};
let basic_string_0_built = BasicString::DQString(basic_string_0_built);
self.user_grammar.basic_string(&basic_string_0_built)?;
self.push(ASTType::BasicString(basic_string_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn basic_string_1(&mut self, _s_q_string: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let s_q_string = pop_item!(self, s_q_string, SQString, context);
let basic_string_1_built = BasicStringSQString {
s_q_string: Box::new(s_q_string),
};
let basic_string_1_built = BasicString::SQString(basic_string_1_built);
self.user_grammar.basic_string(&basic_string_1_built)?;
self.push(ASTType::BasicString(basic_string_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn double_quotation(&mut self, double_quotation: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let double_quotation = double_quotation.token()?.clone();
let double_quotation_built = DoubleQuotation { double_quotation };
self.user_grammar
.double_quotation(&double_quotation_built)?;
self.push(ASTType::DoubleQuotation(double_quotation_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_string(
&mut self,
_double_quotation: &ParseTreeType<'t>,
_d_q_string_list: &ParseTreeType<'t>,
_double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
self.pop(context);
let d_q_string_list = pop_and_reverse_item!(self, d_q_string_list, DQStringList, context);
self.pop(context);
let d_q_string_built = DQString { d_q_string_list };
self.user_grammar.d_q_string(&d_q_string_built)?;
self.push(ASTType::DQString(d_q_string_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_string_list_0(
&mut self,
_d_q_char: &ParseTreeType<'t>,
_d_q_string_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut d_q_string_list = pop_item!(self, d_q_string_list, DQStringList, context);
let d_q_char = pop_item!(self, d_q_char, DQChar, context);
let d_q_string_list_0_built = DQStringList {
d_q_char: Box::new(d_q_char),
};
d_q_string_list.push(d_q_string_list_0_built);
self.push(ASTType::DQStringList(d_q_string_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_string_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let d_q_string_list_1_built = Vec::new();
self.push(ASTType::DQStringList(d_q_string_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_char_0(&mut self, _d_q_unescaped: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let d_q_unescaped = pop_item!(self, d_q_unescaped, DQUnescaped, context);
let d_q_char_0_built = DQCharDQUnescaped {
d_q_unescaped: Box::new(d_q_unescaped),
};
let d_q_char_0_built = DQChar::DQUnescaped(d_q_char_0_built);
self.user_grammar.d_q_char(&d_q_char_0_built)?;
self.push(ASTType::DQChar(d_q_char_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_char_1(&mut self, _d_q_escaped: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let d_q_escaped = pop_item!(self, d_q_escaped, DQEscaped, context);
let d_q_char_1_built = DQCharDQEscaped {
d_q_escaped: Box::new(d_q_escaped),
};
let d_q_char_1_built = DQChar::DQEscaped(d_q_char_1_built);
self.user_grammar.d_q_char(&d_q_char_1_built)?;
self.push(ASTType::DQChar(d_q_char_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_unescaped_0(&mut self, _d_q_no_escape: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let d_q_no_escape = pop_item!(self, d_q_no_escape, DQNoEscape, context);
let d_q_unescaped_0_built = DQUnescapedDQNoEscape {
d_q_no_escape: Box::new(d_q_no_escape),
};
let d_q_unescaped_0_built = DQUnescaped::DQNoEscape(d_q_unescaped_0_built);
self.user_grammar.d_q_unescaped(&d_q_unescaped_0_built)?;
self.push(ASTType::DQUnescaped(d_q_unescaped_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_unescaped_1(&mut self, _non_ascii: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let non_ascii = pop_item!(self, non_ascii, NonAscii, context);
let d_q_unescaped_1_built = DQUnescapedNonAscii {
non_ascii: Box::new(non_ascii),
};
let d_q_unescaped_1_built = DQUnescaped::NonAscii(d_q_unescaped_1_built);
self.user_grammar.d_q_unescaped(&d_q_unescaped_1_built)?;
self.push(ASTType::DQUnescaped(d_q_unescaped_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_escaped(
&mut self,
_escape: &ParseTreeType<'t>,
_d_q_escape_seq_char: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let d_q_escape_seq_char = pop_item!(self, d_q_escape_seq_char, DQEscapeSeqChar, context);
let escape = pop_item!(self, escape, Escape, context);
let d_q_escaped_built = DQEscaped {
escape: Box::new(escape),
d_q_escape_seq_char: Box::new(d_q_escape_seq_char),
};
self.user_grammar.d_q_escaped(&d_q_escaped_built)?;
self.push(ASTType::DQEscaped(d_q_escaped_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_escape_seq_char_0(&mut self, _escape: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let escape = pop_item!(self, escape, Escape, context);
let d_q_escape_seq_char_0_built = DQEscapeSeqCharEscape {
escape: Box::new(escape),
};
let d_q_escape_seq_char_0_built = DQEscapeSeqChar::Escape(d_q_escape_seq_char_0_built);
self.user_grammar
.d_q_escape_seq_char(&d_q_escape_seq_char_0_built)?;
self.push(
ASTType::DQEscapeSeqChar(d_q_escape_seq_char_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_escape_seq_char_1(&mut self, _double_quotation: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let double_quotation = pop_item!(self, double_quotation, DoubleQuotation, context);
let d_q_escape_seq_char_1_built = DQEscapeSeqCharDoubleQuotation {
double_quotation: Box::new(double_quotation),
};
let d_q_escape_seq_char_1_built =
DQEscapeSeqChar::DoubleQuotation(d_q_escape_seq_char_1_built);
self.user_grammar
.d_q_escape_seq_char(&d_q_escape_seq_char_1_built)?;
self.push(
ASTType::DQEscapeSeqChar(d_q_escape_seq_char_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_escape_seq_char_2(&mut self, _esc_n: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let esc_n = pop_item!(self, esc_n, EscN, context);
let d_q_escape_seq_char_2_built = DQEscapeSeqCharEscN {
esc_n: Box::new(esc_n),
};
let d_q_escape_seq_char_2_built = DQEscapeSeqChar::EscN(d_q_escape_seq_char_2_built);
self.user_grammar
.d_q_escape_seq_char(&d_q_escape_seq_char_2_built)?;
self.push(
ASTType::DQEscapeSeqChar(d_q_escape_seq_char_2_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_escape_seq_char_3(&mut self, _esc_t: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let esc_t = pop_item!(self, esc_t, EscT, context);
let d_q_escape_seq_char_3_built = DQEscapeSeqCharEscT {
esc_t: Box::new(esc_t),
};
let d_q_escape_seq_char_3_built = DQEscapeSeqChar::EscT(d_q_escape_seq_char_3_built);
self.user_grammar
.d_q_escape_seq_char(&d_q_escape_seq_char_3_built)?;
self.push(
ASTType::DQEscapeSeqChar(d_q_escape_seq_char_3_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn escape(&mut self, escape: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let escape = escape.token()?.clone();
let escape_built = Escape { escape };
self.user_grammar.escape(&escape_built)?;
self.push(ASTType::Escape(escape_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn non_ascii(&mut self, non_ascii: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let non_ascii = non_ascii.token()?.clone();
let non_ascii_built = NonAscii { non_ascii };
self.user_grammar.non_ascii(&non_ascii_built)?;
self.push(ASTType::NonAscii(non_ascii_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn d_q_no_escape(&mut self, d_q_no_escape: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let d_q_no_escape = d_q_no_escape.token()?.clone();
let d_q_no_escape_built = DQNoEscape { d_q_no_escape };
self.user_grammar.d_q_no_escape(&d_q_no_escape_built)?;
self.push(ASTType::DQNoEscape(d_q_no_escape_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn s_q_string(
&mut self,
_single_quotation: &ParseTreeType<'t>,
_s_q_string_list: &ParseTreeType<'t>,
_single_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let single_quotation0 = pop_item!(self, single_quotation0, SingleQuotation, context);
let s_q_string_list = pop_and_reverse_item!(self, s_q_string_list, SQStringList, context);
let single_quotation = pop_item!(self, single_quotation, SingleQuotation, context);
let s_q_string_built = SQString {
single_quotation: Box::new(single_quotation),
s_q_string_list,
single_quotation0: Box::new(single_quotation0),
};
self.user_grammar.s_q_string(&s_q_string_built)?;
self.push(ASTType::SQString(s_q_string_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn s_q_string_list_0(
&mut self,
_s_q_char: &ParseTreeType<'t>,
_s_q_string_list: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let mut s_q_string_list = pop_item!(self, s_q_string_list, SQStringList, context);
let s_q_char = pop_item!(self, s_q_char, SQChar, context);
let s_q_string_list_0_built = SQStringList {
s_q_char: Box::new(s_q_char),
};
s_q_string_list.push(s_q_string_list_0_built);
self.push(ASTType::SQStringList(s_q_string_list), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn s_q_string_list_1(&mut self) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let s_q_string_list_1_built = Vec::new();
self.push(ASTType::SQStringList(s_q_string_list_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn s_q_char_0(&mut self, _s_q_unescaped: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let s_q_unescaped = pop_item!(self, s_q_unescaped, SQUnescaped, context);
let s_q_char_0_built = SQCharSQUnescaped {
s_q_unescaped: Box::new(s_q_unescaped),
};
let s_q_char_0_built = SQChar::SQUnescaped(s_q_char_0_built);
self.user_grammar.s_q_char(&s_q_char_0_built)?;
self.push(ASTType::SQChar(s_q_char_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn s_q_char_1(&mut self, _s_q_escaped: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let s_q_escaped = pop_item!(self, s_q_escaped, SQEscaped, context);
let s_q_char_1_built = SQCharSQEscaped {
s_q_escaped: Box::new(s_q_escaped),
};
let s_q_char_1_built = SQChar::SQEscaped(s_q_char_1_built);
self.user_grammar.s_q_char(&s_q_char_1_built)?;
self.push(ASTType::SQChar(s_q_char_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn s_q_escaped(
&mut self,
_escape: &ParseTreeType<'t>,
_s_q_escape_seq_char: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let s_q_escape_seq_char = pop_item!(self, s_q_escape_seq_char, SQEscapeSeqChar, context);
let escape = pop_item!(self, escape, Escape, context);
let s_q_escaped_built = SQEscaped {
escape: Box::new(escape),
s_q_escape_seq_char: Box::new(s_q_escape_seq_char),
};
self.user_grammar.s_q_escaped(&s_q_escaped_built)?;
self.push(ASTType::SQEscaped(s_q_escaped_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn s_q_escape_seq_char(&mut self, s_q_escape_seq_char: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let s_q_escape_seq_char = s_q_escape_seq_char.token()?.clone();
let s_q_escape_seq_char_built = SQEscapeSeqChar {
s_q_escape_seq_char,
};
self.user_grammar
.s_q_escape_seq_char(&s_q_escape_seq_char_built)?;
self.push(ASTType::SQEscapeSeqChar(s_q_escape_seq_char_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn s_q_unescaped_0(&mut self, _s_q_no_escape: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let s_q_no_escape = pop_item!(self, s_q_no_escape, SQNoEscape, context);
let s_q_unescaped_0_built = SQUnescapedSQNoEscape {
s_q_no_escape: Box::new(s_q_no_escape),
};
let s_q_unescaped_0_built = SQUnescaped::SQNoEscape(s_q_unescaped_0_built);
self.user_grammar.s_q_unescaped(&s_q_unescaped_0_built)?;
self.push(ASTType::SQUnescaped(s_q_unescaped_0_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn s_q_unescaped_1(&mut self, _non_ascii: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let non_ascii = pop_item!(self, non_ascii, NonAscii, context);
let s_q_unescaped_1_built = SQUnescapedNonAscii {
non_ascii: Box::new(non_ascii),
};
let s_q_unescaped_1_built = SQUnescaped::NonAscii(s_q_unescaped_1_built);
self.user_grammar.s_q_unescaped(&s_q_unescaped_1_built)?;
self.push(ASTType::SQUnescaped(s_q_unescaped_1_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn s_q_no_escape(&mut self, s_q_no_escape: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let s_q_no_escape = s_q_no_escape.token()?.clone();
let s_q_no_escape_built = SQNoEscape { s_q_no_escape };
self.user_grammar.s_q_no_escape(&s_q_no_escape_built)?;
self.push(ASTType::SQNoEscape(s_q_no_escape_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn single_quotation(&mut self, single_quotation: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let single_quotation = single_quotation.token()?.clone();
let single_quotation_built = SingleQuotation { single_quotation };
self.user_grammar
.single_quotation(&single_quotation_built)?;
self.push(ASTType::SingleQuotation(single_quotation_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn identifier_arg_str_0(&mut self, _identifier: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let identifier = pop_item!(self, identifier, Identifier, context);
let identifier_arg_str_0_built = IdentifierArgStrIdentifier {
identifier: Box::new(identifier),
};
let identifier_arg_str_0_built = IdentifierArgStr::Identifier(identifier_arg_str_0_built);
self.user_grammar
.identifier_arg_str(&identifier_arg_str_0_built)?;
self.push(
ASTType::IdentifierArgStr(identifier_arg_str_0_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn identifier_arg_str_1(
&mut self,
_double_quotation: &ParseTreeType<'t>,
_identifier: &ParseTreeType<'t>,
_double_quotation0: &ParseTreeType<'t>,
) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let identifier = pop_item!(self, identifier, Identifier, context);
let identifier_arg_str_1_built = IdentifierArgStrDoubleQuotationIdentifierDoubleQuotation {
identifier: Box::new(identifier),
};
let identifier_arg_str_1_built =
IdentifierArgStr::DoubleQuotationIdentifierDoubleQuotation(identifier_arg_str_1_built);
self.user_grammar
.identifier_arg_str(&identifier_arg_str_1_built)?;
self.push(
ASTType::IdentifierArgStr(identifier_arg_str_1_built),
context,
);
Ok(())
}
#[parol_runtime::function_name::named]
fn identifier(&mut self, identifier: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let identifier = identifier.token()?.clone();
let identifier_built = Identifier { identifier };
self.user_grammar.identifier(&identifier_built)?;
self.push(ASTType::Identifier(identifier_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn ascii_no_semicolon(&mut self, ascii_no_semicolon: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let ascii_no_semicolon = ascii_no_semicolon.token()?.clone();
let ascii_no_semicolon_built = AsciiNoSemicolon { ascii_no_semicolon };
self.user_grammar
.ascii_no_semicolon(&ascii_no_semicolon_built)?;
self.push(ASTType::AsciiNoSemicolon(ascii_no_semicolon_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn ascii_no_brace(&mut self, ascii_no_brace: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let ascii_no_brace = ascii_no_brace.token()?.clone();
let ascii_no_brace_built = AsciiNoBrace { ascii_no_brace };
self.user_grammar.ascii_no_brace(&ascii_no_brace_built)?;
self.push(ASTType::AsciiNoBrace(ascii_no_brace_built), context);
Ok(())
}
#[parol_runtime::function_name::named]
fn yang_version_arg(&mut self, yang_version_arg: &ParseTreeType<'t>) -> Result<()> {
let context = function_name!();
trace!("{}", self.trace_item_stack(context));
let yang_version_arg = yang_version_arg.token()?.clone();
let yang_version_arg_built = YangVersionArg { yang_version_arg };
self.user_grammar
.yang_version_arg(&yang_version_arg_built)?;
self.push(ASTType::YangVersionArg(yang_version_arg_built), context);
Ok(())
}
}
impl<'t> UserActionsTrait<'t> for YangGrammarAuto<'t, '_> {
fn call_semantic_action_for_production_number(
&mut self,
prod_num: usize,
children: &[ParseTreeType<'t>],
) -> Result<()> {
match prod_num {
0 => self.l_brace(&children[0]),
1 => self.esc_n(&children[0]),
2 => self.esc_t(&children[0]),
3 => self.kw_module(&children[0]),
4 => self.kw_submodule(&children[0]),
5 => self.kw_rpc(&children[0]),
6 => self.kw_extension(&children[0]),
7 => self.kw_argument(&children[0]),
8 => self.kw_feature(&children[0]),
9 => self.kw_typedef(&children[0]),
10 => self.kw_grouping(&children[0]),
11 => self.kw_identity(&children[0]),
12 => self.kw_anyxml(&children[0]),
13 => self.kw_anydata(&children[0]),
14 => self.kw_case(&children[0]),
15 => self.kw_container(&children[0]),
16 => self.kw_action(&children[0]),
17 => self.kw_notification(&children[0]),
18 => self.kw_leaf_list(&children[0]),
19 => self.kw_leaf(&children[0]),
20 => self.kw_list(&children[0]),
21 => self.kw_bit(&children[0]),
22 => self.kw_import(&children[0]),
23 => self.kw_include(&children[0]),
24 => self.kw_prefix(&children[0]),
25 => self.kw_belongs_to(&children[0]),
26 => self.kw_base(&children[0]),
27 => self.kw_choice(&children[0]),
28 => self.kw_uses(&children[0]),
29 => self.kw_type(&children[0]),
30 => self.kw_refine(&children[0]),
31 => self.kw_key(&children[0]),
32 => self.kw_deviation(&children[0]),
33 => self.kw_yang_version(&children[0]),
34 => self.kw_status(&children[0]),
35 => self.kw_if_feature(&children[0]),
36 => self.kw_mandatory(&children[0]),
37 => self.kw_config(&children[0]),
38 => self.kw_require_instance(&children[0]),
39 => self.kw_ordered_by(&children[0]),
40 => self.kw_default(&children[0]),
41 => self.kw_fraction_digits(&children[0]),
42 => self.kw_length(&children[0]),
43 => self.kw_range(&children[0]),
44 => self.kw_value(&children[0]),
45 => self.kw_position(&children[0]),
46 => self.kw_enum(&children[0]),
47 => self.kw_revision(&children[0]),
48 => self.kw_revision_date(&children[0]),
49 => self.kw_namespace(&children[0]),
50 => self.yang_0(&children[0]),
51 => self.yang_1(&children[0]),
52 => self.module_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
&children[5],
&children[6],
&children[7],
&children[8],
),
53 => self.module_stmt_list3_0(&children[0], &children[1]),
54 => self.module_stmt_list3_1(),
55 => self.module_stmt_list2_0(&children[0], &children[1]),
56 => self.module_stmt_list2_1(),
57 => self.module_stmt_list1_0(&children[0], &children[1]),
58 => self.module_stmt_list1_1(),
59 => self.module_stmt_list0_0(&children[0], &children[1]),
60 => self.module_stmt_list0_1(),
61 => self.module_stmt_list_0(&children[0], &children[1]),
62 => self.module_stmt_list_1(),
63 => self.submodule_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
&children[5],
&children[6],
&children[7],
&children[8],
),
64 => self.submodule_stmt_list3_0(&children[0], &children[1]),
65 => self.submodule_stmt_list3_1(),
66 => self.submodule_stmt_list2_0(&children[0], &children[1]),
67 => self.submodule_stmt_list2_1(),
68 => self.submodule_stmt_list1_0(&children[0], &children[1]),
69 => self.submodule_stmt_list1_1(),
70 => self.submodule_stmt_list0_0(&children[0], &children[1]),
71 => self.submodule_stmt_list0_1(),
72 => self.submodule_stmt_list_0(&children[0], &children[1]),
73 => self.submodule_stmt_list_1(),
74 => self.module_header_stmts_0(&children[0]),
75 => self.module_header_stmts_1(&children[0]),
76 => self.module_header_stmts_2(&children[0]),
77 => self.submodule_header_stmts_0(&children[0]),
78 => self.submodule_header_stmts_1(&children[0]),
79 => self.meta_stmts_0(&children[0]),
80 => self.meta_stmts_1(&children[0]),
81 => self.meta_stmts_2(&children[0]),
82 => self.meta_stmts_3(&children[0]),
83 => self.linkage_stmts_0(&children[0]),
84 => self.linkage_stmts_1(&children[0]),
85 => self.body_stmts_0(&children[0]),
86 => self.body_stmts_1(&children[0]),
87 => self.body_stmts_2(&children[0]),
88 => self.body_stmts_3(&children[0]),
89 => self.body_stmts_4(&children[0]),
90 => self.body_stmts_5(&children[0]),
91 => self.body_stmts_6(&children[0]),
92 => self.body_stmts_7(&children[0]),
93 => self.body_stmts_8(&children[0]),
94 => self.body_stmts_9(&children[0]),
95 => self.body_stmts_10(&children[0]),
96 => self.data_def_stmt_0(&children[0]),
97 => self.data_def_stmt_1(&children[0]),
98 => self.data_def_stmt_2(&children[0]),
99 => self.data_def_stmt_3(&children[0]),
100 => self.data_def_stmt_4(&children[0]),
101 => self.data_def_stmt_5(&children[0]),
102 => self.data_def_stmt_6(&children[0]),
103 => self.data_def_stmt_7(&children[0]),
104 => self.yang_version_stmt(&children[0], &children[1], &children[2]),
105 => self.yang_version_arg_str_0(&children[0]),
106 => self.yang_version_arg_str_1(&children[0], &children[1], &children[2]),
107 => self.deviation_stmt(&children[0], &children[1], &children[2]),
108 => self.rpc_stmt(&children[0], &children[1], &children[2]),
109 => self.rpc_stmt_suffix_0(&children[0]),
110 => self.rpc_stmt_suffix_1(&children[0], &children[1], &children[2]),
111 => self.rpc_stmt_list_0(&children[0], &children[1]),
112 => self.rpc_stmt_list_group_0(&children[0]),
113 => self.rpc_stmt_list_group_1(&children[0]),
114 => self.rpc_stmt_list_group_2(&children[0]),
115 => self.rpc_stmt_list_group_3(&children[0]),
116 => self.rpc_stmt_list_group_4(&children[0]),
117 => self.rpc_stmt_list_group_5(&children[0]),
118 => self.rpc_stmt_list_group_6(&children[0]),
119 => self.rpc_stmt_list_group_7(&children[0]),
120 => self.rpc_stmt_list_1(),
121 => self.extension_stmt(&children[0], &children[1], &children[2]),
122 => self.extension_stmt_suffix_0(&children[0]),
123 => self.extension_stmt_suffix_1(&children[0], &children[1], &children[2]),
124 => self.extension_stmt_list_0(&children[0], &children[1]),
125 => self.extension_stmt_list_group_0(&children[0]),
126 => self.extension_stmt_list_group_1(&children[0]),
127 => self.extension_stmt_list_group_2(&children[0]),
128 => self.extension_stmt_list_group_3(&children[0]),
129 => self.extension_stmt_list_1(),
130 => self.argument_stmt(&children[0], &children[1], &children[2]),
131 => self.feature_stmt(&children[0], &children[1], &children[2]),
132 => self.feature_stmt_suffix_0(&children[0]),
133 => self.feature_stmt_suffix_1(&children[0], &children[1], &children[2]),
134 => self.feature_stmt_list_0(&children[0], &children[1]),
135 => self.feature_stmt_list_group_0(&children[0]),
136 => self.feature_stmt_list_group_1(&children[0]),
137 => self.feature_stmt_list_group_2(&children[0]),
138 => self.feature_stmt_list_group_3(&children[0]),
139 => self.feature_stmt_list_1(),
140 => self.typedef_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
),
141 => self.typedef_stmt_list_0(&children[0], &children[1]),
142 => self.typedef_stmt_list_group_0(&children[0]),
143 => self.typedef_stmt_list_group_1(&children[0]),
144 => self.typedef_stmt_list_group_2(&children[0]),
145 => self.typedef_stmt_list_group_3(&children[0]),
146 => self.typedef_stmt_list_group_4(&children[0]),
147 => self.typedef_stmt_list_group_5(&children[0]),
148 => self.typedef_stmt_list_1(),
149 => self.augment_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
),
150 => self.augment_stmt_list_0(&children[0], &children[1]),
151 => self.augment_stmt_list_group_0(&children[0]),
152 => self.augment_stmt_list_group_1(&children[0]),
153 => self.augment_stmt_list_group_2(&children[0]),
154 => self.augment_stmt_list_group_3(&children[0]),
155 => self.augment_stmt_list_group_4(&children[0]),
156 => self.augment_stmt_list_group_5(&children[0]),
157 => self.augment_stmt_list_group_6(&children[0]),
158 => self.augment_stmt_list_group_7(&children[0]),
159 => self.augment_stmt_list_group_8(&children[0]),
160 => self.augment_stmt_list_1(),
161 => self.augment_arg_str(&children[0]),
162 => self.when_stmt(&children[0], &children[1], &children[2]),
163 => self.when_stmt_suffix_0(&children[0]),
164 => self.when_stmt_suffix_1(&children[0], &children[1], &children[2]),
165 => self.when_stmt_list_0(&children[0], &children[1]),
166 => self.when_stmt_list_group_0(&children[0]),
167 => self.when_stmt_list_group_1(&children[0]),
168 => self.when_stmt_list_1(),
169 => self.grouping_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
),
170 => self.grouping_stmt_list_0(&children[0], &children[1]),
171 => self.grouping_stmt_list_group_0(&children[0]),
172 => self.grouping_stmt_list_group_1(&children[0]),
173 => self.grouping_stmt_list_group_2(&children[0]),
174 => self.grouping_stmt_list_group_3(&children[0]),
175 => self.grouping_stmt_list_group_4(&children[0]),
176 => self.grouping_stmt_list_group_5(&children[0]),
177 => self.grouping_stmt_list_group_6(&children[0]),
178 => self.grouping_stmt_list_group_7(&children[0]),
179 => self.grouping_stmt_list_group_8(&children[0]),
180 => self.grouping_stmt_list_1(),
181 => self.identity_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
),
182 => self.identity_stmt_list_0(&children[0], &children[1]),
183 => self.identity_stmt_list_group_0(&children[0]),
184 => self.identity_stmt_list_group_1(&children[0]),
185 => self.identity_stmt_list_group_2(&children[0]),
186 => self.identity_stmt_list_group_3(&children[0]),
187 => self.identity_stmt_list_1(),
188 => self.base_stmt(&children[0], &children[1], &children[2]),
189 => self.anyxml_stmt(&children[0], &children[1], &children[2]),
190 => self.anyxml_stmt_suffix_0(&children[0]),
191 => self.anyxml_stmt_suffix_1(&children[0], &children[1], &children[2]),
192 => self.anyxml_stmt_list_0(&children[0], &children[1]),
193 => self.anyxml_stmt_list_group_0(&children[0]),
194 => self.anyxml_stmt_list_group_1(&children[0]),
195 => self.anyxml_stmt_list_group_2(&children[0]),
196 => self.anyxml_stmt_list_group_3(&children[0]),
197 => self.anyxml_stmt_list_group_4(&children[0]),
198 => self.anyxml_stmt_list_group_5(&children[0]),
199 => self.anyxml_stmt_list_group_6(&children[0]),
200 => self.anyxml_stmt_list_group_7(&children[0]),
201 => self.anyxml_stmt_list_1(),
202 => self.choice_stmt(&children[0], &children[1], &children[2]),
203 => self.choice_stmt_suffix_0(&children[0]),
204 => self.choice_stmt_suffix_1(&children[0], &children[1], &children[2]),
205 => self.choice_stmt_list_0(&children[0], &children[1]),
206 => self.choice_stmt_list_group_0(&children[0]),
207 => self.choice_stmt_list_group_1(&children[0]),
208 => self.choice_stmt_list_group_2(&children[0]),
209 => self.choice_stmt_list_group_3(&children[0]),
210 => self.choice_stmt_list_group_4(&children[0]),
211 => self.choice_stmt_list_group_5(&children[0]),
212 => self.choice_stmt_list_group_6(&children[0]),
213 => self.choice_stmt_list_group_7(&children[0]),
214 => self.choice_stmt_list_group_8(&children[0]),
215 => self.choice_stmt_list_group_9(&children[0]),
216 => self.choice_stmt_list_1(),
217 => self.short_case_stmt_0(&children[0]),
218 => self.short_case_stmt_1(&children[0]),
219 => self.short_case_stmt_2(&children[0]),
220 => self.short_case_stmt_3(&children[0]),
221 => self.short_case_stmt_4(&children[0]),
222 => self.short_case_stmt_5(&children[0]),
223 => self.short_case_stmt_6(&children[0]),
224 => self.anydata_stmt(&children[0], &children[1], &children[2]),
225 => self.anydata_stmt_suffix_0(&children[0]),
226 => self.anydata_stmt_suffix_1(&children[0], &children[1], &children[2]),
227 => self.anydata_stmt_list_0(&children[0], &children[1]),
228 => self.anydata_stmt_list_group_0(&children[0]),
229 => self.anydata_stmt_list_group_1(&children[0]),
230 => self.anydata_stmt_list_group_2(&children[0]),
231 => self.anydata_stmt_list_group_3(&children[0]),
232 => self.anydata_stmt_list_group_4(&children[0]),
233 => self.anydata_stmt_list_group_5(&children[0]),
234 => self.anydata_stmt_list_group_6(&children[0]),
235 => self.anydata_stmt_list_group_7(&children[0]),
236 => self.anydata_stmt_list_1(),
237 => self.case_stmt(&children[0], &children[1], &children[2]),
238 => self.case_stmt_suffix_0(&children[0]),
239 => self.case_stmt_suffix_1(&children[0], &children[1], &children[2]),
240 => self.case_stmt_list_0(&children[0], &children[1]),
241 => self.case_stmt_list_group_0(&children[0]),
242 => self.case_stmt_list_group_1(&children[0]),
243 => self.case_stmt_list_group_2(&children[0]),
244 => self.case_stmt_list_group_3(&children[0]),
245 => self.case_stmt_list_group_4(&children[0]),
246 => self.case_stmt_list_1(),
247 => self.status_stmt(&children[0], &children[1], &children[2]),
248 => self.status_arg_str_0(&children[0]),
249 => self.status_arg_str_1(&children[0], &children[1], &children[2]),
250 => self.status_arg(&children[0]),
251 => self.container_stmt(&children[0], &children[1], &children[2]),
252 => self.container_stmt_suffix_0(&children[0]),
253 => self.container_stmt_suffix_1(&children[0], &children[1], &children[2]),
254 => self.container_stmt_list_0(&children[0], &children[1]),
255 => self.container_stmt_list_group_0(&children[0]),
256 => self.container_stmt_list_group_1(&children[0]),
257 => self.container_stmt_list_group_2(&children[0]),
258 => self.container_stmt_list_group_3(&children[0]),
259 => self.container_stmt_list_group_4(&children[0]),
260 => self.container_stmt_list_group_5(&children[0]),
261 => self.container_stmt_list_group_6(&children[0]),
262 => self.container_stmt_list_group_7(&children[0]),
263 => self.container_stmt_list_group_8(&children[0]),
264 => self.container_stmt_list_group_9(&children[0]),
265 => self.container_stmt_list_group_10(&children[0]),
266 => self.container_stmt_list_group_11(&children[0]),
267 => self.container_stmt_list_1(),
268 => self.action_stmt(&children[0], &children[1], &children[2]),
269 => self.action_stmt_suffix_0(&children[0]),
270 => self.action_stmt_suffix_1(&children[0], &children[1], &children[2]),
271 => self.action_stmt_list_0(&children[0], &children[1]),
272 => self.action_stmt_list_group_0(&children[0]),
273 => self.action_stmt_list_group_1(&children[0]),
274 => self.action_stmt_list_group_2(&children[0]),
275 => self.action_stmt_list_group_3(&children[0]),
276 => self.action_stmt_list_group_4(&children[0]),
277 => self.action_stmt_list_group_5(&children[0]),
278 => self.action_stmt_list_1(),
279 => self.input_stmt(&children[0], &children[1], &children[2], &children[3]),
280 => self.input_stmt_list_0(&children[0], &children[1]),
281 => self.input_stmt_list_1(),
282 => self.output_stmt(&children[0], &children[1], &children[2], &children[3]),
283 => self.output_stmt_list_0(&children[0], &children[1]),
284 => self.output_stmt_list_1(),
285 => self.notification_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
),
286 => self.notification_stmt_list_0(&children[0], &children[1]),
287 => self.notification_stmt_list_group_0(&children[0]),
288 => self.notification_stmt_list_group_1(&children[0]),
289 => self.notification_stmt_list_group_2(&children[0]),
290 => self.notification_stmt_list_group_3(&children[0]),
291 => self.notification_stmt_list_group_4(&children[0]),
292 => self.notification_stmt_list_group_5(&children[0]),
293 => self.notification_stmt_list_group_6(&children[0]),
294 => self.notification_stmt_list_group_7(&children[0]),
295 => self.notification_stmt_list_1(),
296 => self.if_feature_stmt(&children[0], &children[1], &children[2]),
297 => self.if_feature_expr_str(&children[0]),
298 => self.if_feature_expr(&children[0], &children[1]),
299 => self.if_feature_expr_opt_0(&children[0], &children[1]),
300 => self.if_feature_expr_opt_1(),
301 => self.if_feature_term(&children[0], &children[1]),
302 => self.if_feature_term_opt_0(&children[0], &children[1]),
303 => self.if_feature_term_opt_1(),
304 => self.if_feature_factor_0(&children[0], &children[1]),
305 => self.if_feature_factor_1(&children[0], &children[1], &children[2]),
306 => self.if_feature_factor_2(&children[0]),
307 => self.if_feature_factor_3(&children[0], &children[1], &children[2]),
308 => self.presence_stmt(&children[0], &children[1], &children[2]),
309 => self.uses_stmt(&children[0], &children[1], &children[2]),
310 => self.uses_stmt_suffix_0(&children[0]),
311 => self.uses_stmt_suffix_1(&children[0], &children[1], &children[2]),
312 => self.uses_stmt_list_0(&children[0], &children[1]),
313 => self.uses_stmt_list_group_0(&children[0]),
314 => self.uses_stmt_list_group_1(&children[0]),
315 => self.uses_stmt_list_group_2(&children[0]),
316 => self.uses_stmt_list_group_3(&children[0]),
317 => self.uses_stmt_list_group_4(&children[0]),
318 => self.uses_stmt_list_group_5(&children[0]),
319 => self.uses_stmt_list_group_6(&children[0]),
320 => self.uses_stmt_list_1(),
321 => self.refine_stmt(&children[0], &children[1], &children[2]),
322 => self.refine_stmt_suffix_0(&children[0]),
323 => self.refine_stmt_suffix_1(&children[0], &children[1], &children[2]),
324 => self.refine_stmt_list_0(&children[0], &children[1]),
325 => self.refine_stmt_list_group_0(&children[0]),
326 => self.refine_stmt_list_group_1(&children[0]),
327 => self.refine_stmt_list_group_2(&children[0]),
328 => self.refine_stmt_list_group_3(&children[0]),
329 => self.refine_stmt_list_group_4(&children[0]),
330 => self.refine_stmt_list_group_5(&children[0]),
331 => self.refine_stmt_list_group_6(&children[0]),
332 => self.refine_stmt_list_group_7(&children[0]),
333 => self.refine_stmt_list_group_8(&children[0]),
334 => self.refine_stmt_list_group_9(&children[0]),
335 => self.refine_stmt_list_1(),
336 => self.refine_arg_str_0(&children[0]),
337 => self.refine_arg_str_1(&children[0], &children[1], &children[2]),
338 => self.refine_arg(&children[0]),
339 => self.descendant_schema_nodeid_0(&children[0]),
340 => self.descendant_schema_nodeid_1(&children[0]),
341 => self.unknown_stmt(&children[0], &children[1], &children[2]),
342 => self.unknown_stmt_suffix_0(&children[0]),
343 => self.unknown_stmt_suffix_1(&children[0], &children[1], &children[2]),
344 => self.unknown_stmt_list_0(&children[0], &children[1]),
345 => self.unknown_stmt_list_group_0(&children[0]),
346 => self.unknown_stmt_list_group_1(&children[0]),
347 => self.unknown_stmt_list_1(),
348 => self.leaf_list_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
),
349 => self.leaf_list_stmt_list_0(&children[0], &children[1]),
350 => self.leaf_list_stmt_list_group_0(&children[0]),
351 => self.leaf_list_stmt_list_group_1(&children[0]),
352 => self.leaf_list_stmt_list_group_2(&children[0]),
353 => self.leaf_list_stmt_list_group_3(&children[0]),
354 => self.leaf_list_stmt_list_group_4(&children[0]),
355 => self.leaf_list_stmt_list_group_5(&children[0]),
356 => self.leaf_list_stmt_list_group_6(&children[0]),
357 => self.leaf_list_stmt_list_group_7(&children[0]),
358 => self.leaf_list_stmt_list_group_8(&children[0]),
359 => self.leaf_list_stmt_list_group_9(&children[0]),
360 => self.leaf_list_stmt_list_group_10(&children[0]),
361 => self.leaf_list_stmt_list_group_11(&children[0]),
362 => self.leaf_list_stmt_list_group_12(&children[0]),
363 => self.leaf_list_stmt_list_group_13(&children[0]),
364 => self.leaf_list_stmt_list_1(),
365 => self.leaf_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
),
366 => self.leaf_stmt_list_0(&children[0], &children[1]),
367 => self.leaf_stmt_list_group_0(&children[0]),
368 => self.leaf_stmt_list_group_1(&children[0]),
369 => self.leaf_stmt_list_group_2(&children[0]),
370 => self.leaf_stmt_list_group_3(&children[0]),
371 => self.leaf_stmt_list_group_4(&children[0]),
372 => self.leaf_stmt_list_group_5(&children[0]),
373 => self.leaf_stmt_list_group_6(&children[0]),
374 => self.leaf_stmt_list_group_7(&children[0]),
375 => self.leaf_stmt_list_group_8(&children[0]),
376 => self.leaf_stmt_list_group_9(&children[0]),
377 => self.leaf_stmt_list_group_10(&children[0]),
378 => self.leaf_stmt_list_group_11(&children[0]),
379 => self.leaf_stmt_list_1(),
380 => self.must_stmt(&children[0], &children[1], &children[2]),
381 => self.must_stmt_suffix_0(&children[0]),
382 => self.must_stmt_suffix_1(&children[0], &children[1], &children[2]),
383 => self.must_stmt_list_0(&children[0], &children[1]),
384 => self.must_stmt_list_group_0(&children[0]),
385 => self.must_stmt_list_group_1(&children[0]),
386 => self.must_stmt_list_1(),
387 => self.error_message(&children[0], &children[1], &children[2]),
388 => self.units_stmt(&children[0], &children[1], &children[2]),
389 => self.config_stmt(&children[0], &children[1], &children[2]),
390 => self.mandatory_stmt(&children[0], &children[1], &children[2]),
391 => self.mandatory_arg_str_0(&children[0]),
392 => self.mandatory_arg_str_1(&children[0], &children[1], &children[2]),
393 => self.mandatory_arg(&children[0]),
394 => self.list_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
),
395 => self.list_stmt_list_0(&children[0], &children[1]),
396 => self.list_stmt_list_group_0(&children[0]),
397 => self.list_stmt_list_group_1(&children[0]),
398 => self.list_stmt_list_group_2(&children[0]),
399 => self.list_stmt_list_group_3(&children[0]),
400 => self.list_stmt_list_group_4(&children[0]),
401 => self.list_stmt_list_group_5(&children[0]),
402 => self.list_stmt_list_group_6(&children[0]),
403 => self.list_stmt_list_group_7(&children[0]),
404 => self.list_stmt_list_group_8(&children[0]),
405 => self.list_stmt_list_group_9(&children[0]),
406 => self.list_stmt_list_group_10(&children[0]),
407 => self.list_stmt_list_group_11(&children[0]),
408 => self.list_stmt_list_group_12(&children[0]),
409 => self.list_stmt_list_group_13(&children[0]),
410 => self.list_stmt_list_group_14(&children[0]),
411 => self.list_stmt_list_1(),
412 => self.ordered_by_stmt(&children[0], &children[1], &children[2]),
413 => self.ordered_by_arg_str_0(&children[0]),
414 => self.ordered_by_arg_str_1(&children[0], &children[1], &children[2]),
415 => self.ordered_by_arg(&children[0]),
416 => self.default_stmt(&children[0], &children[1]),
417 => self.default_stmt_suffix_0(&children[0], &children[1]),
418 => {
self.default_stmt_suffix_1(&children[0], &children[1], &children[2], &children[3])
}
419 => self.max_elements_stmt(&children[0], &children[1], &children[2]),
420 => self.min_elements_stmt(&children[0], &children[1], &children[2]),
421 => self.type_stmt(&children[0], &children[1], &children[2]),
422 => self.type_stmt_suffix_0(&children[0]),
423 => self.type_stmt_suffix_1(&children[0], &children[1], &children[2]),
424 => self.type_stmt_list_0(&children[0], &children[1]),
425 => self.type_stmt_list_group_0(&children[0]),
426 => self.type_stmt_list_group_1(&children[0]),
427 => self.type_stmt_list_group_2(&children[0]),
428 => self.type_stmt_list_group_3(&children[0]),
429 => self.type_stmt_list_group_4(&children[0]),
430 => self.type_stmt_list_group_5(&children[0]),
431 => self.type_stmt_list_group_6(&children[0]),
432 => self.type_stmt_list_group_7(&children[0]),
433 => self.type_stmt_list_1(),
434 => self.fraction_digits_stmt(&children[0], &children[1], &children[2]),
435 => self.fraction_digits_arg(&children[0]),
436 => self.bit_stmt(&children[0], &children[1], &children[2]),
437 => self.bit_stmt_suffix_0(&children[0]),
438 => self.bit_stmt_suffix_1(&children[0], &children[1], &children[2]),
439 => self.bit_stmt_list_0(&children[0], &children[1]),
440 => self.bit_stmt_list_group_0(&children[0]),
441 => self.bit_stmt_list_group_1(&children[0]),
442 => self.bit_stmt_list_group_2(&children[0]),
443 => self.bit_stmt_list_1(),
444 => self.position_stmt(&children[0], &children[1], &children[2]),
445 => self.leafref_specification_0(&children[0]),
446 => self.leafref_specification_1(&children[0]),
447 => self.require_instance_stmt(&children[0], &children[1], &children[2]),
448 => self.require_instance_arg_str_0(&children[0]),
449 => self.require_instance_arg_str_1(&children[0], &children[1], &children[2]),
450 => self.path_stmt(&children[0], &children[1], &children[2]),
451 => self.string_restrictions_0(&children[0]),
452 => self.string_restrictions_1(&children[0]),
453 => self.pattern_stmt(&children[0], &children[1], &children[2]),
454 => self.length_stmt(&children[0], &children[1], &children[2]),
455 => self.enum_stmt(&children[0], &children[1], &children[2]),
456 => self.enum_stmt_suffix_0(&children[0]),
457 => self.enum_stmt_suffix_1(&children[0], &children[1], &children[2]),
458 => self.enum_stmt_list_0(&children[0], &children[1]),
459 => self.enum_stmt_list_group_0(&children[0]),
460 => self.enum_stmt_list_group_1(&children[0]),
461 => self.enum_stmt_list_group_2(&children[0]),
462 => self.enum_stmt_list_group_3(&children[0]),
463 => self.enum_stmt_list_1(),
464 => self.value_stmt(&children[0], &children[1], &children[2]),
465 => self.integer_value_str_0(&children[0]),
466 => self.integer_value_str_1(&children[0], &children[1], &children[2]),
467 => self.integer_value(&children[0]),
468 => self.enum_arg_str_0(&children[0]),
469 => self.enum_arg_str_1(&children[0], &children[1], &children[2]),
470 => self.range_stmt(&children[0], &children[1], &children[2]),
471 => self.range_arg_str_0(&children[0]),
472 => self.range_arg_str_1(&children[0], &children[1], &children[2]),
473 => self.range_arg(&children[0], &children[1]),
474 => self.range_arg_opt_0(&children[0], &children[1]),
475 => self.range_arg_opt_1(),
476 => self.range_part(&children[0], &children[1]),
477 => self.range_part_opt_0(&children[0], &children[1]),
478 => self.range_part_opt_1(),
479 => self.range_boundary_0(&children[0]),
480 => self.range_boundary_1(&children[0]),
481 => self.range_boundary_2(&children[0]),
482 => self.identifier_ref_arg_str_0(&children[0]),
483 => self.identifier_ref_arg_str_1(&children[0], &children[1], &children[2]),
484 => self.identifier_ref(&children[0], &children[1]),
485 => self.identifier_ref_opt_0(&children[0], &children[1]),
486 => self.identifier_ref_opt_1(),
487 => self.key_stmt(&children[0], &children[1], &children[2]),
488 => self.key_arg_str_0(&children[0]),
489 => self.key_arg_str_1(&children[0], &children[1], &children[2]),
490 => self.semicolon(&children[0]),
491 => self.key_arg(&children[0], &children[1]),
492 => self.key_arg_opt_0(&children[0]),
493 => self.key_arg_opt_1(),
494 => self.absolute_schema_nodeid(&children[0], &children[1]),
495 => self.import_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
),
496 => self.import_stmt_list_0(&children[0], &children[1]),
497 => self.import_stmt_list_group_0(&children[0]),
498 => self.import_stmt_list_group_1(&children[0]),
499 => self.import_stmt_list_group_2(&children[0]),
500 => self.import_stmt_list_group_3(&children[0]),
501 => self.import_stmt_list_1(),
502 => self.include_stmt(&children[0], &children[1], &children[2]),
503 => self.include_stmt_suffix_0(&children[0]),
504 => self.include_stmt_suffix_1(&children[0], &children[1], &children[2]),
505 => self.include_stmt_list_0(&children[0], &children[1]),
506 => self.include_stmt_list_group_0(&children[0]),
507 => self.include_stmt_list_group_1(&children[0]),
508 => self.include_stmt_list_group_2(&children[0]),
509 => self.include_stmt_list_1(),
510 => self.revision_date_stmt(&children[0], &children[1], &children[2]),
511 => self.namespace_stmt(&children[0], &children[1], &children[2]),
512 => self.uri_str_0(&children[0]),
513 => self.uri_str_1(&children[0], &children[1], &children[2]),
514 => self.uri_arg(&children[0]),
515 => self.prefix_stmt(&children[0], &children[1], &children[2]),
516 => self.belongs_to_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
),
517 => self.organization_stmt(&children[0], &children[1], &children[2]),
518 => self.contact_stmt(&children[0], &children[1], &children[2]),
519 => self.description_stmt(&children[0], &children[1], &children[2]),
520 => self.reference_stmt(&children[0], &children[1], &children[2]),
521 => self.revision_stmt(
&children[0],
&children[1],
&children[2],
&children[3],
&children[4],
),
522 => self.revision_stmt_list_0(&children[0], &children[1]),
523 => self.revision_stmt_list_group_0(&children[0]),
524 => self.revision_stmt_list_group_1(&children[0]),
525 => self.revision_stmt_list_1(),
526 => self.date_arg_str_0(&children[0]),
527 => self.date_arg_str_1(&children[0], &children[1], &children[2]),
528 => self.date_arg(&children[0]),
529 => self.ystring_0(&children[0], &children[1]),
530 => self.ystring_1(&children[0]),
531 => self.ystring_opt_0(&children[0], &children[1]),
532 => self.ystring_opt_1(),
533 => self.basic_string_0(&children[0]),
534 => self.basic_string_1(&children[0]),
535 => self.double_quotation(&children[0]),
536 => self.d_q_string(&children[0], &children[1], &children[2]),
537 => self.d_q_string_list_0(&children[0], &children[1]),
538 => self.d_q_string_list_1(),
539 => self.d_q_char_0(&children[0]),
540 => self.d_q_char_1(&children[0]),
541 => self.d_q_unescaped_0(&children[0]),
542 => self.d_q_unescaped_1(&children[0]),
543 => self.d_q_escaped(&children[0], &children[1]),
544 => self.d_q_escape_seq_char_0(&children[0]),
545 => self.d_q_escape_seq_char_1(&children[0]),
546 => self.d_q_escape_seq_char_2(&children[0]),
547 => self.d_q_escape_seq_char_3(&children[0]),
548 => self.escape(&children[0]),
549 => self.non_ascii(&children[0]),
550 => self.d_q_no_escape(&children[0]),
551 => self.s_q_string(&children[0], &children[1], &children[2]),
552 => self.s_q_string_list_0(&children[0], &children[1]),
553 => self.s_q_string_list_1(),
554 => self.s_q_char_0(&children[0]),
555 => self.s_q_char_1(&children[0]),
556 => self.s_q_escaped(&children[0], &children[1]),
557 => self.s_q_escape_seq_char(&children[0]),
558 => self.s_q_unescaped_0(&children[0]),
559 => self.s_q_unescaped_1(&children[0]),
560 => self.s_q_no_escape(&children[0]),
561 => self.single_quotation(&children[0]),
562 => self.identifier_arg_str_0(&children[0]),
563 => self.identifier_arg_str_1(&children[0], &children[1], &children[2]),
564 => self.identifier(&children[0]),
565 => self.ascii_no_semicolon(&children[0]),
566 => self.ascii_no_brace(&children[0]),
567 => self.yang_version_arg(&children[0]),
_ => Err(ParserError::InternalError(format!(
"Unhandled production number: {prod_num}"
))
.into()),
}
}
fn on_comment(&mut self, token: Token<'t>) {
self.user_grammar.on_comment(token)
}
}