-
Notifications
You must be signed in to change notification settings - Fork 10.4k
/
Copy pathcomplete_concurrency_keyword.swift
42 lines (35 loc) · 1.13 KB
/
complete_concurrency_keyword.swift
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
// RUN: %batch-code-completion -enable-experimental-concurrency
// REQUIRES: concurrency
#^GLOBAL^#
// GLOBAL-DAG: Keyword/None: actor; name=actor
// GLOBAL-DAG: Keyword/None: await; name=await
// GLOBAL: End completion
enum Namespace {
#^TYPEMEMBER^#
// TYPEMEMBER-NOT: Keyword{{.*}}await
// TYPEMEMBER-DAG: Keyword/None: actor; name=actor
// TYPEMEMBER-NOT: Keyword{{.*}}await
// TYPEMEMBER: End completion
}
func testFunc() {
#^STMT^#
// STMT-DAG: Keyword/None/Flair[RareKeyword]: actor; name=actor
// STMT-DAG: Keyword/None: await; name=await
// STMT: End completion
}
func testExpr() {
_ = #^EXPR^#
// EXPR-NOT: Keyword{{.*}}actor
// EXPR-DAG: Keyword/None: await; name=await
// EXPR-NOT: Keyword{{.*}}actor
// EXPR: End completion
}
func testClosure() {
func receiveClosure(_: () async -> Void) {}
receiveClosure { #^IN_CLOSURE?check=STMT^# }
}
func testFunc(x: Int = #^FUNCDEFAULTPARAM?check=EXPR^#) {}
struct Something {
var x = #^MEMBERINIT?check=EXPR^#
func testFunc(x: Int = #^METHODDEFAULTPARAM?check=EXPR^#) {}
}