Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor(ast): import Tsify to shorten code #2665

Merged
merged 1 commit into from
Mar 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
238 changes: 120 additions & 118 deletions crates/oxc_ast/src/ast/js.rs

Large diffs are not rendered by default.

46 changes: 24 additions & 22 deletions crates/oxc_ast/src/ast/jsx.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ use oxc_allocator::{Box, Vec};
use oxc_span::{Atom, Span};
#[cfg(feature = "serde")]
use serde::Serialize;
#[cfg(feature = "wasm")]
use tsify::Tsify;

use super::{js::*, literal::*, ts::*};

Expand All @@ -12,7 +14,7 @@ use super::{js::*, literal::*, ts::*};
/// JSX Element
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type", rename_all = "camelCase"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXElement<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -24,7 +26,7 @@ pub struct JSXElement<'a> {
/// JSX Opening Element
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type", rename_all = "camelCase"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXOpeningElement<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -37,7 +39,7 @@ pub struct JSXOpeningElement<'a> {
/// JSX Closing Element
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXClosingElement<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -47,7 +49,7 @@ pub struct JSXClosingElement<'a> {
/// JSX Fragment
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type", rename_all = "camelCase"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXFragment<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -58,15 +60,15 @@ pub struct JSXFragment<'a> {

#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXOpeningFragment {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
}

#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXClosingFragment {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -75,7 +77,7 @@ pub struct JSXClosingFragment {
/// JSX Element Name
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(untagged))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub enum JSXElementName<'a> {
/// `<Apple />`
Identifier(JSXIdentifier<'a>),
Expand All @@ -88,7 +90,7 @@ pub enum JSXElementName<'a> {
/// JSX Namespaced Name
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXNamespacedName<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -105,7 +107,7 @@ impl<'a> std::fmt::Display for JSXNamespacedName<'a> {
/// JSX Member Expression
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXMemberExpression<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -124,15 +126,15 @@ impl<'a> JSXMemberExpression<'a> {

#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(untagged))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub enum JSXMemberExpressionObject<'a> {
Identifier(JSXIdentifier<'a>),
MemberExpression(Box<'a, JSXMemberExpression<'a>>),
}

#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXExpressionContainer<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -141,15 +143,15 @@ pub struct JSXExpressionContainer<'a> {

#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(untagged))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub enum JSXExpression<'a> {
Expression(Expression<'a>),
EmptyExpression(JSXEmptyExpression),
}

#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXEmptyExpression {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -160,7 +162,7 @@ pub struct JSXEmptyExpression {
/// JSX Attributes
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(untagged))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub enum JSXAttributeItem<'a> {
Attribute(Box<'a, JSXAttribute<'a>>),
SpreadAttribute(Box<'a, JSXSpreadAttribute<'a>>),
Expand All @@ -169,7 +171,7 @@ pub enum JSXAttributeItem<'a> {
/// JSX Attribute
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXAttribute<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -186,7 +188,7 @@ impl<'a> JSXAttribute<'a> {
/// JSX Spread Attribute
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXSpreadAttribute<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -196,7 +198,7 @@ pub struct JSXSpreadAttribute<'a> {
/// JSX Attribute Name
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(untagged))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub enum JSXAttributeName<'a> {
Identifier(JSXIdentifier<'a>),
NamespacedName(Box<'a, JSXNamespacedName<'a>>),
Expand All @@ -205,7 +207,7 @@ pub enum JSXAttributeName<'a> {
/// JSX Attribute Value
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(untagged))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub enum JSXAttributeValue<'a> {
StringLiteral(StringLiteral<'a>),
ExpressionContainer(JSXExpressionContainer<'a>),
Expand All @@ -215,7 +217,7 @@ pub enum JSXAttributeValue<'a> {

#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXIdentifier<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -227,7 +229,7 @@ pub struct JSXIdentifier<'a> {
/// JSX Child
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(untagged))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub enum JSXChild<'a> {
Text(JSXText<'a>),
Element(Box<'a, JSXElement<'a>>),
Expand All @@ -238,7 +240,7 @@ pub enum JSXChild<'a> {

#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXSpreadChild<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -247,7 +249,7 @@ pub struct JSXSpreadChild<'a> {

#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct JSXText<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand Down
18 changes: 10 additions & 8 deletions crates/oxc_ast/src/ast/literal.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,12 @@ use oxc_span::{Atom, Span};
use oxc_syntax::{BigintBase, NumberBase};
#[cfg(feature = "serde")]
use serde::Serialize;
#[cfg(feature = "wasm")]
use tsify::Tsify;

#[derive(Debug, Clone, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct BooleanLiteral {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -36,7 +38,7 @@ impl BooleanLiteral {

#[derive(Debug, Clone)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct NullLiteral {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -56,7 +58,7 @@ impl NullLiteral {

#[derive(Debug, Clone)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct NumericLiteral<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand Down Expand Up @@ -107,7 +109,7 @@ impl<'a> Hash for NumericLiteral<'a> {

#[derive(Debug, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct BigIntLiteral<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -124,7 +126,7 @@ impl<'a> BigIntLiteral<'a> {

#[derive(Debug, Clone, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct RegExpLiteral<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand All @@ -136,7 +138,7 @@ pub struct RegExpLiteral<'a> {

#[derive(Debug, Clone, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct RegExp<'a> {
pub pattern: Atom<'a>,
pub flags: RegExpFlags,
Expand Down Expand Up @@ -228,12 +230,12 @@ impl fmt::Display for RegExpFlags {

#[derive(Debug, Clone, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct EmptyObject;

#[derive(Debug, Clone, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize), serde(tag = "type"))]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct StringLiteral<'a> {
#[cfg_attr(feature = "serde", serde(flatten))]
pub span: Span,
Expand Down
Loading
Loading