From 0185eb2edcb3b01afb701cdab34643a26c2ad17e Mon Sep 17 00:00:00 2001 From: overlookmotel Date: Thu, 25 Apr 2024 12:16:24 +0100 Subject: [PATCH] refactor(ast): remove duplicate `TSNamedTupleMember` representation (#3101) Removes duplicate representation of a `TSTupleElement` which is a `TSNamedTupleMember`. Closes #3100. --- crates/oxc_ast/src/ast/ts.rs | 1 - crates/oxc_ast/src/visit/visit.rs | 1 - crates/oxc_ast/src/visit/visit_mut.rs | 1 - crates/oxc_codegen/src/gen_ts.rs | 3 --- crates/oxc_parser/src/ts/list.rs | 4 ++-- 5 files changed, 2 insertions(+), 8 deletions(-) diff --git a/crates/oxc_ast/src/ast/ts.rs b/crates/oxc_ast/src/ast/ts.rs index 96695f60c..1ab5f1877 100644 --- a/crates/oxc_ast/src/ast/ts.rs +++ b/crates/oxc_ast/src/ast/ts.rs @@ -299,7 +299,6 @@ pub enum TSTupleElement<'a> { TSType(TSType<'a>), TSOptionalType(Box<'a, TSOptionalType<'a>>), TSRestType(Box<'a, TSRestType<'a>>), - TSNamedTupleMember(Box<'a, TSNamedTupleMember<'a>>), } #[derive(Debug, Hash)] diff --git a/crates/oxc_ast/src/visit/visit.rs b/crates/oxc_ast/src/visit/visit.rs index d98d6882c..03d442559 100644 --- a/crates/oxc_ast/src/visit/visit.rs +++ b/crates/oxc_ast/src/visit/visit.rs @@ -2748,7 +2748,6 @@ pub mod walk { TSTupleElement::TSType(ty) => visitor.visit_ts_type(ty), TSTupleElement::TSOptionalType(ty) => visitor.visit_ts_type(&ty.type_annotation), TSTupleElement::TSRestType(ty) => visitor.visit_ts_type(&ty.type_annotation), - TSTupleElement::TSNamedTupleMember(ty) => visitor.visit_ts_type(&ty.element_type), }; } diff --git a/crates/oxc_ast/src/visit/visit_mut.rs b/crates/oxc_ast/src/visit/visit_mut.rs index 8eac175c2..04d11a9e9 100644 --- a/crates/oxc_ast/src/visit/visit_mut.rs +++ b/crates/oxc_ast/src/visit/visit_mut.rs @@ -2900,7 +2900,6 @@ pub mod walk_mut { TSTupleElement::TSType(ty) => visitor.visit_ts_type(ty), TSTupleElement::TSOptionalType(ty) => visitor.visit_ts_type(&mut ty.type_annotation), TSTupleElement::TSRestType(ty) => visitor.visit_ts_type(&mut ty.type_annotation), - TSTupleElement::TSNamedTupleMember(ty) => visitor.visit_ts_type(&mut ty.element_type), }; } diff --git a/crates/oxc_codegen/src/gen_ts.rs b/crates/oxc_codegen/src/gen_ts.rs index 76966b5e4..769f3f086 100644 --- a/crates/oxc_codegen/src/gen_ts.rs +++ b/crates/oxc_codegen/src/gen_ts.rs @@ -509,9 +509,6 @@ impl<'a, const MINIFY: bool> Gen for TSTupleElement<'a> { p.print_str(b"..."); ts_type.type_annotation.gen(p, ctx); } - TSTupleElement::TSNamedTupleMember(ts_type) => { - ts_type.gen(p, ctx); - } } } } diff --git a/crates/oxc_parser/src/ts/list.rs b/crates/oxc_parser/src/ts/list.rs index 9fa129732..7ca86c2c0 100644 --- a/crates/oxc_parser/src/ts/list.rs +++ b/crates/oxc_parser/src/ts/list.rs @@ -74,9 +74,9 @@ impl<'a> SeparatedList<'a> for TSTupleElementList<'a> { p.expect(Kind::Colon)?; let element_type = p.parse_ts_type()?; - self.elements.push(TSTupleElement::TSNamedTupleMember(p.ast.alloc( + self.elements.push(TSTupleElement::TSType(TSType::TSNamedTupleMember(p.ast.alloc( TSNamedTupleMember { span: p.end_span(span), element_type, label, optional }, - ))); + )))); return Ok(()); }