29
29
// RUN: %FileCheck %s -check-prefix=COMMON_SELF_NO_DOT_1 < %t.self.txt
30
30
// RUN: %FileCheck %s -check-prefix=NO_INIT < %t.self.txt
31
31
32
+ // RUN: %target-swift-ide-test -code-completion -source-filename %s -code-completion-token=STATIC_SELF_PAREN > %t.self.txt
33
+ // RUN: %FileCheck %s -check-prefix=STATIC_SELF_PAREN < %t.self.txt
34
+
32
35
// RUN: %target-swift-ide-test -code-completion -source-filename %s -code-completion-token=FUNC_SELF_DOT_1 > %t.self.txt
33
36
// RUN: %FileCheck %s -check-prefix=FUNC_SELF_DOT_1 < %t.self.txt
34
37
// RUN: %FileCheck %s -check-prefix=COMMON_SELF_DOT_1 < %t.self.txt
@@ -166,9 +169,8 @@ class ThisDerived1 : ThisBase1 {
166
169
167
170
init ( ) {
168
171
self#^CONSTRUCTOR_SELF_NO_DOT_1^#
169
- // CONSTRUCTOR_SELF_NO_DOT_1: Begin completions, 24 items
170
- // CONSTRUCTOR_SELF_NO_DOT_1-DAG: Decl[Constructor]/CurrNominal: .init()[#ThisDerived1#];
171
- // CONSTRUCTOR_SELF_NO_DOT_1-DAG: Decl[Constructor]/CurrNominal: .init({#a: Int#})[#ThisDerived1#];
172
+ // CONSTRUCTOR_SELF_NO_DOT_1: Begin completions, 21 items
173
+ // CONSTRUCTOR_SELF_NO_DOT_1-NOT: Decl[Constructor]
172
174
// CONSTRUCTOR_SELF_NO_DOT_1: End completions
173
175
let d : ThisDerived1
174
176
d#^CONSTRUCTOR_NONSELF_NO_DOT_1^#
@@ -177,9 +179,8 @@ class ThisDerived1 : ThisBase1 {
177
179
178
180
init ( a : Int ) {
179
181
self . #^CONSTRUCTOR_SELF_DOT_1^#
180
- // CONSTRUCTOR_SELF_DOT_1: Begin completions, 19 items
181
- // CONSTRUCTOR_SELF_DOT_1-DAG: Decl[Constructor]/CurrNominal: init()[#ThisDerived1#];
182
- // CONSTRUCTOR_SELF_DOT_1-DAG: Decl[Constructor]/CurrNominal: init({#a: Int#})[#ThisDerived1#];
182
+ // CONSTRUCTOR_SELF_DOT_1: Begin completions, 16 items
183
+ // CONSTRUCTOR_SELF_DOT_1-NOT: Decl[Constructor]
183
184
184
185
// CONSTRUCTOR_SELF_DOT_1: End completions
185
186
let d : ThisDerived1
@@ -214,8 +215,8 @@ class ThisDerived1 : ThisBase1 {
214
215
// FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[InstanceMethod]/CurrNominal: .derivedFunc0({#self: ThisDerived1#})[#() -> Void#]
215
216
// FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[StaticVar]/CurrNominal: .derivedStaticVar[#Int#]
216
217
// FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[StaticMethod]/CurrNominal: .derivedStaticFunc0()[#Void#]
217
- // FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[Constructor]/CurrNominal: ()[#ThisDerived1#]
218
- // FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[Constructor]/CurrNominal: ({#a: Int#})[#ThisDerived1#]
218
+ // FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[Constructor]/CurrNominal: .init ()[#ThisDerived1#]
219
+ // FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[Constructor]/CurrNominal: .init ({#a: Int#})[#ThisDerived1#]
219
220
// FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[InstanceMethod]/CurrNominal: .test1({#self: ThisDerived1#})[#() -> Void#]
220
221
// FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[InstanceMethod]/CurrNominal: .test2({#self: ThisDerived1#})[#() -> Void#]
221
222
// FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[StaticMethod]/CurrNominal: .staticTest1()[#Void#]
@@ -226,7 +227,7 @@ class ThisDerived1 : ThisBase1 {
226
227
// FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[Class]/CurrNominal: .DerivedExtNestedClass[#ThisDerived1.DerivedExtNestedClass#]
227
228
// FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[Enum]/CurrNominal: .DerivedExtNestedEnum[#ThisDerived1.DerivedExtNestedEnum#]
228
229
// FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[TypeAlias]/CurrNominal: .DerivedExtNestedTypealias[#Int#]
229
- // FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[Constructor]/CurrNominal: ({#someExtensionArg: Int#})[#ThisDerived1#]
230
+ // FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[Constructor]/CurrNominal: .init ({#someExtensionArg: Int#})[#ThisDerived1#]
230
231
// FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[InstanceMethod]/Super: .baseFunc0({#self: ThisBase1#})[#() -> Void#]
231
232
// FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[InstanceMethod]/Super: .baseFunc1({#self: ThisBase1#})[#(Int) -> Void#]
232
233
// FUNC_STATIC_SELF_NO_DOT_1-NEXT: Decl[StaticVar]/Super: .baseStaticVar[#Int#]
@@ -248,6 +249,8 @@ class ThisDerived1 : ThisBase1 {
248
249
// FUNC_STATIC_SELF_DOT_1-NEXT: Decl[InstanceMethod]/CurrNominal: derivedFunc0({#self: ThisDerived1#})[#() -> Void#]
249
250
// FUNC_STATIC_SELF_DOT_1-NEXT: Decl[StaticVar]/CurrNominal: derivedStaticVar[#Int#]
250
251
// FUNC_STATIC_SELF_DOT_1-NEXT: Decl[StaticMethod]/CurrNominal: derivedStaticFunc0()[#Void#]
252
+ // FUNC_STATIC_SELF_DOT_1-NEXT: Decl[Constructor]/CurrNominal: init()[#ThisDerived1#]
253
+ // FUNC_STATIC_SELF_DOT_1-NEXT: Decl[Constructor]/CurrNominal: init({#a: Int#})[#ThisDerived1#]
251
254
// FUNC_STATIC_SELF_DOT_1-NEXT: Decl[InstanceMethod]/CurrNominal: test1({#self: ThisDerived1#})[#() -> Void#]
252
255
// FUNC_STATIC_SELF_DOT_1-NEXT: Decl[InstanceMethod]/CurrNominal: test2({#self: ThisDerived1#})[#() -> Void#]
253
256
// FUNC_STATIC_SELF_DOT_1-NEXT: Decl[StaticMethod]/CurrNominal: staticTest1()[#Void#]
@@ -258,6 +261,7 @@ class ThisDerived1 : ThisBase1 {
258
261
// FUNC_STATIC_SELF_DOT_1-NEXT: Decl[Class]/CurrNominal: DerivedExtNestedClass[#ThisDerived1.DerivedExtNestedClass#]
259
262
// FUNC_STATIC_SELF_DOT_1-NEXT: Decl[Enum]/CurrNominal: DerivedExtNestedEnum[#ThisDerived1.DerivedExtNestedEnum#]
260
263
// FUNC_STATIC_SELF_DOT_1-NEXT: Decl[TypeAlias]/CurrNominal: DerivedExtNestedTypealias[#Int#]
264
+ // FUNC_STATIC_SELF_DOT_1-NEXT: Decl[Constructor]/CurrNominal: init({#someExtensionArg: Int#})[#ThisDerived1#]
261
265
// FUNC_STATIC_SELF_DOT_1-NEXT: Decl[InstanceMethod]/Super: baseFunc0({#self: ThisBase1#})[#() -> Void#]
262
266
// FUNC_STATIC_SELF_DOT_1-NEXT: Decl[InstanceMethod]/Super: baseFunc1({#self: ThisBase1#})[#(Int) -> Void#]
263
267
// FUNC_STATIC_SELF_DOT_1-NEXT: Decl[StaticVar]/Super: baseStaticVar[#Int#]
@@ -272,6 +276,11 @@ class ThisDerived1 : ThisBase1 {
272
276
}
273
277
}
274
278
279
+ class func staticTest3( ) {
280
+ self ( #^STATIC_SELF_PAREN^#
281
+ // STATIC_SELF_PAREN-NOT: Decl[Constructor]
282
+ }
283
+
275
284
extension ThisDerived1 {
276
285
var derivedExtProp : Int {
277
286
get {
@@ -310,10 +319,9 @@ struct S1 {
310
319
init ( ) { }
311
320
init ( x: Int ) {
312
321
self . #^STRUCT_CONSTRUCTOR_SELF_DOT_1^#
313
- // STRUCT_CONSTRUCTOR_SELF_DOT_1: Begin completions, 4 items
322
+ // STRUCT_CONSTRUCTOR_SELF_DOT_1: Begin completions, 2 items
314
323
// STRUCT_CONSTRUCTOR_SELF_DOT_1-DAG: Keyword[self]/CurrNominal: self[#S1#]; name=self
315
- // STRUCT_CONSTRUCTOR_SELF_DOT_1-DAG: Decl[Constructor]/CurrNominal: init()[#S1#];
316
- // STRUCT_CONSTRUCTOR_SELF_DOT_1-DAG: Decl[Constructor]/CurrNominal: init({#x: Int#})[#S1#];
324
+ // STRUCT_CONSTRUCTOR_SELF_DOT_1-NOT: Decl[Constructor]
317
325
// STRUCT_CONSTRUCTOR_SELF_DOT_1-DAG: Decl[InstanceMethod]/CurrNominal: f()[#Void#];
318
326
// STRUCT_CONSTRUCTOR_SELF_DOT_1: End completions
319
327
let s : S1
0 commit comments