@@ -69,7 +69,7 @@ extension FunctionCallExprSyntax {
69
69
// Trailing comma won't exist any more, move its trivia to the end of
70
70
// the closure instead
71
71
if let comma = arg. trailingComma {
72
- closure = closure. with ( \ . trailingTrivia, closure . trailingTrivia . merging ( triviaOf: comma) )
72
+ closure. trailingTrivia = closure. trailingTrivia. merging ( triviaOf: comma)
73
73
}
74
74
closures. append ( ( arg, closure) )
75
75
}
@@ -80,13 +80,10 @@ extension FunctionCallExprSyntax {
80
80
81
81
// First trailing closure won't have label/colon. Transfer their trivia.
82
82
var trailingClosure = closures. first!. closure
83
- . with (
84
- \. leadingTrivia,
85
- Trivia ( )
86
- . merging ( triviaOf: closures. first!. original. label)
87
- . merging ( triviaOf: closures. first!. original. colon)
88
- . merging ( closures. first!. closure. leadingTrivia)
89
- )
83
+ trailingClosure. leadingTrivia = Trivia ( )
84
+ . merging ( triviaOf: closures. first!. original. label)
85
+ . merging ( triviaOf: closures. first!. original. colon)
86
+ . merging ( closures. first!. closure. leadingTrivia)
90
87
let additionalTrailingClosures = closures. dropFirst ( ) . map {
91
88
MultipleTrailingClosureElementSyntax (
92
89
label: $0. original. label ?? . wildcardToken( ) ,
@@ -101,47 +98,36 @@ extension FunctionCallExprSyntax {
101
98
// last comma otherwise. Makes sure to keep the trivia of any removed node.
102
99
var argList = Array ( arguments. dropLast ( closures. count) )
103
100
if argList. isEmpty {
104
- converted =
105
- converted
106
- . with ( \. leftParen, nil )
107
- . with ( \. rightParen, nil )
101
+ converted. leftParen = nil
102
+ converted. rightParen = nil
108
103
109
104
// No left paren any more, right paren is handled below since it makes
110
105
// sense to keep its trivia of the end of the call, regardless of whether
111
106
// it was removed or not.
112
107
if let leftParen = leftParen {
113
- trailingClosure = trailingClosure. with (
114
- \. leadingTrivia,
115
- Trivia ( )
116
- . merging ( triviaOf: leftParen)
117
- . merging ( trailingClosure. leadingTrivia)
118
- )
108
+ trailingClosure. leadingTrivia = Trivia ( )
109
+ . merging ( triviaOf: leftParen)
110
+ . merging ( trailingClosure. leadingTrivia)
119
111
}
120
112
} else {
121
113
let last = argList. last!
122
114
if let comma = last. trailingComma {
123
- converted =
124
- converted
125
- . with ( \. rightParen, TokenSyntax . rightParenToken ( trailingTrivia: Trivia ( ) . merging ( triviaOf: comma) ) )
115
+ converted. rightParen = TokenSyntax . rightParenToken ( trailingTrivia: Trivia ( ) . merging ( triviaOf: comma) )
126
116
}
127
- argList [ argList. count - 1 ] =
128
- last
129
- . with ( \. trailingComma, nil )
117
+ argList [ argList. count - 1 ] = last. with ( \. trailingComma, nil )
130
118
}
131
119
132
120
// Update arguments and trailing closures
133
- converted =
134
- converted
135
- . with ( \. arguments, LabeledExprListSyntax ( argList) )
136
- . with ( \. trailingClosure, trailingClosure)
121
+ converted. arguments = LabeledExprListSyntax ( argList)
122
+ converted. trailingClosure = trailingClosure
137
123
if !additionalTrailingClosures. isEmpty {
138
- converted = converted . with ( \ . additionalTrailingClosures, MultipleTrailingClosureElementListSyntax ( additionalTrailingClosures) )
124
+ converted. additionalTrailingClosures = MultipleTrailingClosureElementListSyntax ( additionalTrailingClosures)
139
125
}
140
126
141
127
// The right paren either doesn't exist any more, or is before all the
142
128
// trailing closures. Moves its trivia to the end of the converted call.
143
129
if let rightParen = rightParen {
144
- converted = converted. with ( \ . trailingTrivia, converted . trailingTrivia . merging ( triviaOf: rightParen) )
130
+ converted. trailingTrivia = converted. trailingTrivia. merging ( triviaOf: rightParen)
145
131
}
146
132
147
133
return converted
0 commit comments