mirror of
https://github.com/danbulant/oxc
synced 2026-05-24 12:21:58 +00:00
refactor(ast,parser): box FormalParameters
This commit is contained in:
parent
d57ab2f088
commit
39a05030d7
4 changed files with 19 additions and 19 deletions
|
|
@ -1191,7 +1191,7 @@ pub struct Function<'a> {
|
|||
pub expression: bool,
|
||||
pub generator: bool,
|
||||
pub r#async: bool,
|
||||
pub params: FormalParameters<'a>,
|
||||
pub params: Box<'a, FormalParameters<'a>>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub body: Option<Box<'a, FunctionBody<'a>>>,
|
||||
pub declare: bool,
|
||||
|
|
@ -1295,7 +1295,7 @@ pub struct ArrowExpression<'a> {
|
|||
pub expression: bool,
|
||||
pub generator: bool,
|
||||
pub r#async: bool,
|
||||
pub params: FormalParameters<'a>, // UniqueFormalParameters in spec
|
||||
pub params: Box<'a, FormalParameters<'a>>, // UniqueFormalParameters in spec
|
||||
pub body: Box<'a, FunctionBody<'a>>,
|
||||
|
||||
pub type_parameters: Option<Box<'a, TSTypeParameterDeclaration<'a>>>,
|
||||
|
|
|
|||
|
|
@ -550,7 +550,7 @@ pub struct TSIndexSignature<'a> {
|
|||
pub struct TSCallSignatureDeclaration<'a> {
|
||||
#[serde(flatten)]
|
||||
pub node: Node,
|
||||
pub params: FormalParameters<'a>,
|
||||
pub params: Box<'a, FormalParameters<'a>>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub return_type: Option<TSTypeAnnotation<'a>>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
|
|
@ -575,7 +575,7 @@ pub struct TSMethodSignature<'a> {
|
|||
#[serde(skip_serializing_if = "is_false")]
|
||||
pub optional: bool,
|
||||
pub kind: TSMethodSignatureKind,
|
||||
pub params: FormalParameters<'a>,
|
||||
pub params: Box<'a, FormalParameters<'a>>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub return_type: Option<TSTypeAnnotation<'a>>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
|
|
@ -587,7 +587,7 @@ pub struct TSMethodSignature<'a> {
|
|||
pub struct TSConstructSignatureDeclaration<'a> {
|
||||
#[serde(flatten)]
|
||||
pub node: Node,
|
||||
pub params: FormalParameters<'a>,
|
||||
pub params: Box<'a, FormalParameters<'a>>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub return_type: Option<TSTypeAnnotation<'a>>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
|
|
@ -714,7 +714,7 @@ pub struct TSImportType<'a> {
|
|||
pub struct TSFunctionType<'a> {
|
||||
#[serde(flatten)]
|
||||
pub node: Node,
|
||||
pub params: FormalParameters<'a>,
|
||||
pub params: Box<'a, FormalParameters<'a>>,
|
||||
pub return_type: TSTypeAnnotation<'a>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub type_parameters: Option<Box<'a, TSTypeParameterDeclaration<'a>>>,
|
||||
|
|
@ -726,7 +726,7 @@ pub struct TSConstructorType<'a> {
|
|||
#[serde(flatten)]
|
||||
pub node: Node,
|
||||
pub r#abstract: bool,
|
||||
pub params: FormalParameters<'a>,
|
||||
pub params: Box<'a, FormalParameters<'a>>,
|
||||
pub return_type: TSTypeAnnotation<'a>,
|
||||
#[serde(skip_serializing_if = "Option::is_none")]
|
||||
pub type_parameters: Option<Box<'a, TSTypeParameterDeclaration<'a>>>,
|
||||
|
|
|
|||
|
|
@ -349,7 +349,7 @@ impl<'a> AstBuilder<'a> {
|
|||
expression: bool,
|
||||
generator: bool,
|
||||
r#async: bool,
|
||||
params: FormalParameters<'a>,
|
||||
params: Box<'a, FormalParameters<'a>>,
|
||||
body: Box<'a, FunctionBody<'a>>,
|
||||
type_parameters: Option<Box<'a, TSTypeParameterDeclaration<'a>>>,
|
||||
return_type: Option<TSTypeAnnotation<'a>>,
|
||||
|
|
@ -680,8 +680,8 @@ impl<'a> AstBuilder<'a> {
|
|||
node: Node,
|
||||
kind: FormalParameterKind,
|
||||
items: Vec<'a, FormalParameter<'a>>,
|
||||
) -> FormalParameters<'a> {
|
||||
FormalParameters { node, kind, items }
|
||||
) -> Box<'a, FormalParameters<'a>> {
|
||||
self.alloc(FormalParameters { node, kind, items })
|
||||
}
|
||||
|
||||
#[must_use]
|
||||
|
|
@ -708,7 +708,7 @@ impl<'a> AstBuilder<'a> {
|
|||
expression: bool,
|
||||
generator: bool,
|
||||
r#async: bool,
|
||||
params: FormalParameters<'a>,
|
||||
params: Box<'a, FormalParameters<'a>>,
|
||||
body: Option<Box<'a, FunctionBody<'a>>>,
|
||||
type_parameters: Option<Box<'a, TSTypeParameterDeclaration<'a>>>,
|
||||
return_type: Option<TSTypeAnnotation<'a>>,
|
||||
|
|
@ -1324,7 +1324,7 @@ impl<'a> AstBuilder<'a> {
|
|||
pub fn ts_call_signature_declaration(
|
||||
&self,
|
||||
node: Node,
|
||||
params: FormalParameters<'a>,
|
||||
params: Box<'a, FormalParameters<'a>>,
|
||||
return_type: Option<TSTypeAnnotation<'a>>,
|
||||
type_parameters: Option<Box<'a, TSTypeParameterDeclaration<'a>>>,
|
||||
) -> TSSignature<'a> {
|
||||
|
|
@ -1341,7 +1341,7 @@ impl<'a> AstBuilder<'a> {
|
|||
pub fn ts_construct_signature_declaration(
|
||||
&self,
|
||||
node: Node,
|
||||
params: FormalParameters<'a>,
|
||||
params: Box<'a, FormalParameters<'a>>,
|
||||
return_type: Option<TSTypeAnnotation<'a>>,
|
||||
type_parameters: Option<Box<'a, TSTypeParameterDeclaration<'a>>>,
|
||||
) -> TSSignature<'a> {
|
||||
|
|
@ -1362,7 +1362,7 @@ impl<'a> AstBuilder<'a> {
|
|||
computed: bool,
|
||||
optional: bool,
|
||||
kind: TSMethodSignatureKind,
|
||||
params: FormalParameters<'a>,
|
||||
params: Box<'a, FormalParameters<'a>>,
|
||||
return_type: Option<TSTypeAnnotation<'a>>,
|
||||
type_parameters: Option<Box<'a, TSTypeParameterDeclaration<'a>>>,
|
||||
) -> TSSignature<'a> {
|
||||
|
|
@ -1668,7 +1668,7 @@ impl<'a> AstBuilder<'a> {
|
|||
&self,
|
||||
node: Node,
|
||||
r#abstract: bool,
|
||||
params: FormalParameters<'a>,
|
||||
params: Box<'a, FormalParameters<'a>>,
|
||||
return_type: TSTypeAnnotation<'a>,
|
||||
type_parameters: Option<Box<'a, TSTypeParameterDeclaration<'a>>>,
|
||||
) -> TSType<'a> {
|
||||
|
|
@ -1686,7 +1686,7 @@ impl<'a> AstBuilder<'a> {
|
|||
pub fn ts_function_type(
|
||||
&self,
|
||||
node: Node,
|
||||
params: FormalParameters<'a>,
|
||||
params: Box<'a, FormalParameters<'a>>,
|
||||
return_type: TSTypeAnnotation<'a>,
|
||||
type_parameters: Option<Box<'a, TSTypeParameterDeclaration<'a>>>,
|
||||
) -> TSType<'a> {
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ use crate::Parser;
|
|||
|
||||
type ArrowFunctionHead<'a> = (
|
||||
Option<Box<'a, TSTypeParameterDeclaration<'a>>>,
|
||||
FormalParameters<'a>,
|
||||
Box<'a, FormalParameters<'a>>,
|
||||
Option<TSTypeAnnotation<'a>>,
|
||||
bool,
|
||||
Node,
|
||||
|
|
@ -82,7 +82,7 @@ impl<'a> Parser<'a> {
|
|||
pub fn parse_formal_parameters(
|
||||
&mut self,
|
||||
params_kind: FormalParameterKind,
|
||||
) -> Result<FormalParameters<'a>> {
|
||||
) -> Result<Box<'a, FormalParameters<'a>>> {
|
||||
let node = self.start_node();
|
||||
let elements = FormalParameterList::parse(self)?.elements;
|
||||
Ok(self.ast.formal_parameters(self.end_node(node), params_kind, elements))
|
||||
|
|
@ -448,7 +448,7 @@ impl<'a> Parser<'a> {
|
|||
&mut self,
|
||||
node: Node,
|
||||
type_parameters: Option<Box<'a, TSTypeParameterDeclaration<'a>>>,
|
||||
params: FormalParameters<'a>,
|
||||
params: Box<'a, FormalParameters<'a>>,
|
||||
return_type: Option<TSTypeAnnotation<'a>>,
|
||||
r#async: bool,
|
||||
) -> Result<Expression<'a>> {
|
||||
|
|
|
|||
Loading…
Reference in a new issue