@@ -78,7 +78,7 @@ impl<'a> Format<'a> for AstNode<'a, Vec<'a, Directive<'a>>> {
7878 let source_text = f. context ( ) . source_text ( ) ;
7979 let mut join = f. join_nodes_with_hardline ( ) ;
8080 for directive in self {
81- join. entry ( directive. span ( ) , source_text , & directive) ;
81+ join. entry ( directive. span ( ) , & directive) ;
8282 }
8383 join. finish ( ) ?;
8484 // if next_sibling's first leading_trivia has more than one new_line, we should add an extra empty line at the end of
@@ -183,7 +183,7 @@ impl<'a> Format<'a> for AstNode<'a, Vec<'a, ObjectPropertyKind<'a>>> {
183183 for ( element, formatted) in self . iter ( ) . zip (
184184 FormatSeparatedIter :: new ( self . iter ( ) , "," ) . with_trailing_separator ( trailing_separator) ,
185185 ) {
186- join. entry ( element. span ( ) , source_text , & formatted) ;
186+ join. entry ( element. span ( ) , & formatted) ;
187187 }
188188 join. finish ( )
189189 }
@@ -371,7 +371,14 @@ impl<'a> FormatWrite<'a> for AstNode<'a, UnaryExpression<'a>> {
371371 if self . operator ( ) . is_keyword ( ) {
372372 write ! ( f, space( ) ) ;
373373 }
374- write ! ( f, self . argument( ) )
374+ if f. comments ( ) . has_comments_in_span ( self . span ) {
375+ write ! (
376+ f,
377+ [ group( & format_args!( text( "(" ) , soft_block_indent( self . argument( ) ) , text( ")" ) ) ) ]
378+ )
379+ } else {
380+ write ! ( f, self . argument( ) )
381+ }
375382 }
376383}
377384
@@ -443,7 +450,6 @@ impl<'a> FormatWrite<'a> for AstNode<'a, ArrayAssignmentTarget<'a>> {
443450
444451 join. entry (
445452 SPAN ,
446- source_text,
447453 & format_with ( |f| {
448454 if let Some ( element) = element. as_ref ( ) {
449455 write ! ( f, group( element) ) ?;
@@ -569,7 +575,7 @@ impl<'a> Format<'a> for AstNode<'a, Vec<'a, Statement<'a>>> {
569575 let source_text = f. context ( ) . source_text ( ) ;
570576 let mut join = f. join_nodes_with_hardline ( ) ;
571577 for stmt in self {
572- join. entry ( stmt. span ( ) , source_text , stmt) ;
578+ join. entry ( stmt. span ( ) , stmt) ;
573579 }
574580 join. finish ( )
575581 }
@@ -873,7 +879,7 @@ impl<'a> Format<'a> for AstNode<'a, Vec<'a, SwitchCase<'a>>> {
873879 let source_text = f. source_text ( ) ;
874880 let mut join = f. join_nodes_with_hardline ( ) ;
875881 for case in self {
876- join. entry ( case. span ( ) , source_text , case) ;
882+ join. entry ( case. span ( ) , case) ;
877883 }
878884 join. finish ( )
879885 }
@@ -1178,7 +1184,7 @@ impl<'a> Format<'a> for AstNode<'a, Vec<'a, ClassElement<'a>>> {
11781184 let mut join = f. join_nodes_with_hardline ( ) ;
11791185 for ( e1, e2) in self . iter ( ) . zip ( self . iter ( ) . skip ( 1 ) . map ( Some ) . chain ( std:: iter:: once ( None ) ) )
11801186 {
1181- join. entry ( e1. span ( ) , source_text , & ( e1, e2) ) ;
1187+ join. entry ( e1. span ( ) , & ( e1, e2) ) ;
11821188 }
11831189 join. finish ( )
11841190 }
@@ -1858,7 +1864,7 @@ impl<'a> Format<'a> for AstNode<'a, Vec<'a, TSEnumMember<'a>>> {
18581864 . with_trailing_separator ( trailing_separator)
18591865 . nodes_grouped ( ) ,
18601866 ) {
1861- join. entry ( element. span ( ) , source_text , & formatted) ;
1867+ join. entry ( element. span ( ) , & formatted) ;
18621868 }
18631869 join. finish ( )
18641870 }
@@ -2261,7 +2267,7 @@ impl<'a> FormatWrite<'a> for AstNode<'a, TSInterfaceBody<'a>> {
22612267 let source_text = f. context ( ) . source_text ( ) ;
22622268 let mut joiner = f. join_nodes_with_soft_line ( ) ;
22632269 for ( index, sig) in self . body ( ) . iter ( ) . enumerate ( ) {
2264- joiner. entry ( sig. span ( ) , source_text , sig) ;
2270+ joiner. entry ( sig. span ( ) , sig) ;
22652271 }
22662272 joiner. finish ( )
22672273 }
@@ -2293,7 +2299,7 @@ impl<'a> Format<'a> for AstNode<'a, Vec<'a, TSSignature<'a>>> {
22932299 let source_text = f. source_text ( ) ;
22942300 let mut join = f. join_nodes_with_soft_line ( ) ;
22952301 for element in self {
2296- join. entry ( element. span ( ) , source_text , element) ;
2302+ join. entry ( element. span ( ) , element) ;
22972303 }
22982304 join. finish ( )
22992305 }
0 commit comments