@@ -554,13 +554,25 @@ public struct InlineSnapshotSyntaxDescriptor: Hashable {
554
554
case 0 :
555
555
if snapshot. wasRecording || functionCallExpr. trailingClosure == nil {
556
556
functionCallExpr. rightParen? . trailingTrivia = . space
557
+ let trailingClosureTrivia = functionCallExpr. trailingClosure? . trailingTrivia
557
558
if let snapshotClosure {
558
- functionCallExpr. trailingClosure = snapshotClosure // FIXME: ?? multipleTrailingClosures.removeFirst()
559
+ // FIXME: ?? multipleTrailingClosures.removeFirst()
560
+ functionCallExpr. trailingClosure =
561
+ if let trailingClosureTrivia, trailingClosureTrivia. count > 0 {
562
+ snapshotClosure. with ( \. trailingTrivia, snapshotClosure. trailingTrivia + trailingClosureTrivia)
563
+ } else {
564
+ snapshotClosure
565
+ }
559
566
} else if !functionCallExpr. additionalTrailingClosures. isEmpty {
560
567
let additionalTrailingClosure = functionCallExpr. additionalTrailingClosures. remove (
561
568
at: functionCallExpr. additionalTrailingClosures. startIndex
562
569
)
563
- functionCallExpr. trailingClosure = additionalTrailingClosure. closure
570
+ functionCallExpr. trailingClosure =
571
+ if let trailingClosureTrivia, trailingClosureTrivia. count > 0 {
572
+ additionalTrailingClosure. closure. with ( \. trailingTrivia, additionalTrailingClosure. closure. trailingTrivia + trailingClosureTrivia)
573
+ } else {
574
+ additionalTrailingClosure. closure
575
+ }
564
576
} else {
565
577
functionCallExpr. rightParen? . trailingTrivia = " "
566
578
functionCallExpr. trailingClosure = nil
@@ -599,7 +611,13 @@ public struct InlineSnapshotSyntaxDescriptor: Hashable {
599
611
if snapshot. wasRecording {
600
612
if let snapshotClosure {
601
613
functionCallExpr. additionalTrailingClosures [ index] . label = snapshotLabel
602
- functionCallExpr. additionalTrailingClosures [ index] . closure = snapshotClosure
614
+ let trailingTrivia = functionCallExpr. additionalTrailingClosures [ index] . closure. trailingTrivia
615
+ functionCallExpr. additionalTrailingClosures [ index] . closure =
616
+ if trailingTrivia. count > 0 {
617
+ snapshotClosure. with ( \. trailingTrivia, snapshotClosure. trailingTrivia + trailingTrivia)
618
+ } else {
619
+ snapshotClosure
620
+ }
603
621
} else {
604
622
functionCallExpr. additionalTrailingClosures. remove ( at: index)
605
623
}
0 commit comments