@@ -135,7 +135,8 @@ public struct ExpandEditorPlaceholder: EditRefactoringProvider {
135
135
/// Expansion on `closure1` and `normalArg` is the same as `ExpandEditorPlaceholder`.
136
136
public struct ExpandEditorPlaceholders : EditRefactoringProvider {
137
137
public static func textRefactor( syntax token: TokenSyntax , in context: Void ) -> [ SourceEdit ] {
138
- guard let placeholder = token. parent? . as ( EditorPlaceholderExprSyntax . self) ,
138
+ guard let placeholder = token. parent? . as ( DeclReferenceExprSyntax . self) ,
139
+ placeholder. baseName. isEditorPlaceholder,
139
140
let arg = placeholder. parent? . as ( LabeledExprSyntax . self) ,
140
141
let argList = arg. parent? . as ( LabeledExprListSyntax . self) ,
141
142
let call = argList. parent? . as ( FunctionCallExprSyntax . self)
@@ -190,8 +191,8 @@ extension FunctionTypeSyntax {
190
191
placeholder = ExpandEditorPlaceholder . wrapInTypePlaceholder ( ret, type: ret)
191
192
}
192
193
193
- let statementPlaceholder = EditorPlaceholderExprSyntax (
194
- placeholder : . identifier( placeholder)
194
+ let statementPlaceholder = DeclReferenceExprSyntax (
195
+ baseName : . identifier( placeholder)
195
196
)
196
197
let closureStatement = CodeBlockItemSyntax (
197
198
item: . expr( ExprSyntax ( statementPlaceholder) )
@@ -234,8 +235,9 @@ extension FunctionCallExprSyntax {
234
235
var includedArg = false
235
236
var argsToExpand = 0
236
237
for arg in arguments. reversed ( ) {
237
- guard let expr = arg. expression. as ( EditorPlaceholderExprSyntax . self) ,
238
- let data = EditorPlaceholderData ( token: expr. placeholder) ,
238
+ guard let expr = arg. expression. as ( DeclReferenceExprSyntax . self) ,
239
+ expr. baseName. isEditorPlaceholder,
240
+ let data = EditorPlaceholderData ( token: expr. baseName) ,
239
241
case let . typed( _, type) = data,
240
242
type. is ( FunctionTypeSyntax . self)
241
243
else {
@@ -253,7 +255,7 @@ extension FunctionCallExprSyntax {
253
255
254
256
var expandedArgs = [ LabeledExprSyntax] ( )
255
257
for arg in arguments. suffix ( argsToExpand) {
256
- let edits = ExpandEditorPlaceholder . textRefactor ( syntax: arg. expression. cast ( EditorPlaceholderExprSyntax . self) . placeholder )
258
+ let edits = ExpandEditorPlaceholder . textRefactor ( syntax: arg. expression. cast ( DeclReferenceExprSyntax . self) . baseName )
257
259
guard edits. count == 1 , let edit = edits. first, !edit. replacement. isEmpty else {
258
260
return nil
259
261
}
0 commit comments