diff --git a/rust/ast-generator/src/main.rs b/rust/ast-generator/src/main.rs index 33c901cea8c..ab550f00518 100644 --- a/rust/ast-generator/src/main.rs +++ b/rust/ast-generator/src/main.rs @@ -465,8 +465,12 @@ struct ExtractorInfo { nodes: Vec, } -fn enum_to_extractor_info(node: &AstEnumSrc) -> ExtractorEnumInfo { - ExtractorEnumInfo { +fn enum_to_extractor_info(node: &AstEnumSrc) -> Option { + if node.name == "VariantDef" { + // currently defined but unused + return None; + } + Some(ExtractorEnumInfo { name: class_name(&node.name), snake_case_name: to_lower_snake_case(&node.name), ast_name: node.name.clone(), @@ -478,7 +482,7 @@ fn enum_to_extractor_info(node: &AstEnumSrc) -> ExtractorEnumInfo { snake_case_name: to_lower_snake_case(v), }) .collect(), - } + }) } fn field_info_to_extractor_info(node: &AstNodeSrc, field: &FieldInfo) -> ExtractorNodeFieldInfo { @@ -528,7 +532,7 @@ fn node_to_extractor_info(node: &AstNodeSrc) -> ExtractorNodeInfo { fn write_extractor(grammar: &AstSrc) -> mustache::Result { let extractor_info = ExtractorInfo { - enums: grammar.enums.iter().map(enum_to_extractor_info).collect(), + enums: grammar.enums.iter().filter_map(enum_to_extractor_info).collect(), nodes: grammar.nodes.iter().map(node_to_extractor_info).collect(), }; let template = mustache::compile_str(include_str!("templates/extractor.mustache"))?; diff --git a/rust/extractor/src/translate/generated.rs b/rust/extractor/src/translate/generated.rs index 4f9181952f2..9479f793961 100644 --- a/rust/extractor/src/translate/generated.rs +++ b/rust/extractor/src/translate/generated.rs @@ -176,14 +176,6 @@ impl Translator<'_> { } } - pub(crate) fn emit_variant_def(&mut self, node: ast::VariantDef) -> Option> { - match node { - ast::VariantDef::Struct(inner) => self.emit_struct(inner).map(Into::into), - ast::VariantDef::Union(inner) => self.emit_union(inner).map(Into::into), - ast::VariantDef::Variant(inner) => self.emit_variant(inner).map(Into::into), - } - } - pub(crate) fn emit_item(&mut self, node: ast::Item) -> Option> { match node { ast::Item::Const(inner) => self.emit_const(inner).map(Into::into),