@@ -19,6 +19,7 @@ pub trait Gen: GetSpan {
19
19
fn gen ( & self , p : & mut Codegen , ctx : Context ) ;
20
20
21
21
/// Generate code for an AST node. Alias for `gen`.
22
+ #[ inline]
22
23
fn print ( & self , p : & mut Codegen , ctx : Context ) {
23
24
self . gen ( p, ctx) ;
24
25
}
@@ -30,6 +31,7 @@ pub trait GenExpr: GetSpan {
30
31
fn gen_expr ( & self , p : & mut Codegen , precedence : Precedence , ctx : Context ) ;
31
32
32
33
/// Generate code for an expression, respecting operator precedence. Alias for `gen_expr`.
34
+ #[ inline]
33
35
fn print_expr ( & self , p : & mut Codegen , precedence : Precedence , ctx : Context ) {
34
36
self . gen_expr ( p, precedence, ctx) ;
35
37
}
@@ -1186,9 +1188,9 @@ impl GenExpr for Expression<'_> {
1186
1188
Self :: StringLiteral ( lit) => lit. print ( p, ctx) ,
1187
1189
Self :: Identifier ( ident) => ident. print ( p, ctx) ,
1188
1190
Self :: ThisExpression ( expr) => expr. print ( p, ctx) ,
1189
- match_member_expression ! ( Self ) => {
1190
- self . to_member_expression ( ) . print_expr ( p, precedence, ctx) ;
1191
- }
1191
+ Self :: ComputedMemberExpression ( expr ) => expr . print_expr ( p , precedence , ctx ) ,
1192
+ Self :: StaticMemberExpression ( expr ) => expr . print_expr ( p, precedence, ctx) ,
1193
+ Self :: PrivateFieldExpression ( expr ) => expr . print_expr ( p , precedence , ctx ) ,
1192
1194
Self :: CallExpression ( expr) => expr. print_expr ( p, precedence, ctx) ,
1193
1195
Self :: ArrayExpression ( expr) => expr. print ( p, ctx) ,
1194
1196
Self :: ObjectExpression ( expr) => expr. print_expr ( p, precedence, ctx) ,
@@ -1899,9 +1901,9 @@ impl GenExpr for SimpleAssignmentTarget<'_> {
1899
1901
fn gen_expr ( & self , p : & mut Codegen , precedence : Precedence , ctx : Context ) {
1900
1902
match self {
1901
1903
Self :: AssignmentTargetIdentifier ( ident) => ident. print ( p, ctx) ,
1902
- match_member_expression ! ( Self ) => {
1903
- self . to_member_expression ( ) . print_expr ( p, precedence, ctx) ;
1904
- }
1904
+ Self :: ComputedMemberExpression ( expr ) => expr . print_expr ( p , precedence , ctx ) ,
1905
+ Self :: StaticMemberExpression ( expr ) => expr . print_expr ( p, precedence, ctx) ,
1906
+ Self :: PrivateFieldExpression ( expr ) => expr . print_expr ( p , precedence , ctx ) ,
1905
1907
Self :: TSAsExpression ( e) => e. print_expr ( p, precedence, ctx) ,
1906
1908
Self :: TSSatisfiesExpression ( e) => e. print_expr ( p, precedence, ctx) ,
1907
1909
Self :: TSNonNullExpression ( e) => e. print_expr ( p, precedence, ctx) ,
@@ -2174,9 +2176,9 @@ impl GenExpr for ChainExpression<'_> {
2174
2176
p. wrap ( precedence >= Precedence :: Postfix , |p| match & self . expression {
2175
2177
ChainElement :: CallExpression ( expr) => expr. print_expr ( p, precedence, ctx) ,
2176
2178
ChainElement :: TSNonNullExpression ( expr) => expr. print_expr ( p, precedence, ctx) ,
2177
- match_member_expression ! ( ChainElement ) => {
2178
- self . expression . to_member_expression ( ) . print_expr ( p, precedence, ctx) ;
2179
- }
2179
+ ChainElement :: ComputedMemberExpression ( expr ) => expr . print_expr ( p , precedence , ctx ) ,
2180
+ ChainElement :: StaticMemberExpression ( expr ) => expr . print_expr ( p, precedence, ctx) ,
2181
+ ChainElement :: PrivateFieldExpression ( expr ) => expr . print_expr ( p , precedence , ctx ) ,
2180
2182
} ) ;
2181
2183
}
2182
2184
}
0 commit comments