[docs] Add LICENSE.txt to the root of the mono-repo
[llvm-project.git] / clang / test / Index / complete-interfaces.m
blob3e90407c78d7c7c383447a35d8c2f24c2c64d797
1 /* Note: the RUN lines are near the end of the file, since line/column
2    matter for this test. */
4 @class Int1, Int2, Int3, Int4;
6 @interface Int3 
9 @end
11 @interface Int2 : Int3
14 @end
16 @implementation Int2
17 @end
19 @implementation Int3
20 @end
22 // RUN: c-index-test -code-completion-at=%s:6:12 %s | FileCheck -check-prefix=CHECK-CC1 %s
23 // CHECK-CC1: ObjCInterfaceDecl:{TypedText Int1}
24 // CHECK-CC1: ObjCInterfaceDecl:{TypedText Int2}
25 // CHECK-CC1: ObjCInterfaceDecl:{TypedText Int3}
26 // CHECK-CC1: ObjCInterfaceDecl:{TypedText Int4}
27 // RUN: c-index-test -code-completion-at=%s:11:12 %s | FileCheck -check-prefix=CHECK-CC2 %s
28 // CHECK-CC2: ObjCInterfaceDecl:{TypedText Int1}
29 // CHECK-CC2-NEXT: ObjCInterfaceDecl:{TypedText Int2}
30 // CHECK-CC2-NEXT: ObjCInterfaceDecl:{TypedText Int3}
31 // CHECK-CC2-NEXT: ObjCInterfaceDecl:{TypedText Int4}
32 // RUN: c-index-test -code-completion-at=%s:11:19 %s | FileCheck -check-prefix=CHECK-CC3 %s
33 // CHECK-CC3: ObjCInterfaceDecl:{TypedText Int1}
34 // CHECK-CC3-NEXT: ObjCInterfaceDecl:{TypedText Int3}
35 // CHECK-CC3-NEXT: ObjCInterfaceDecl:{TypedText Int4}
36 // RUN: c-index-test -code-completion-at=%s:16:17 %s | FileCheck -check-prefix=CHECK-CC4 %s
37 // CHECK-CC4: ObjCInterfaceDecl:{TypedText Int1}
38 // CHECK-CC4-NEXT: ObjCInterfaceDecl:{TypedText Int2}
39 // CHECK-CC4-NEXT: ObjCInterfaceDecl:{TypedText Int3}
40 // CHECK-CC4-NEXT: ObjCInterfaceDecl:{TypedText Int4}
41 // RUN: c-index-test -code-completion-at=%s:19:17 %s | FileCheck -check-prefix=CHECK-CC5 %s
42 // CHECK-CC5: ObjCInterfaceDecl:{TypedText Int1}
43 // CHECK-CC5-NEXT: ObjCInterfaceDecl:{TypedText Int3}
44 // CHECK-CC5-NEXT: ObjCInterfaceDecl:{TypedText Int4}
47 // RUN: env CINDEXTEST_EDITING=1 CINDEXTEST_COMPLETION_CACHING=1 c-index-test -code-completion-at=%s:11:12 %s | FileCheck -check-prefix=CHECK-CC2 %s
50 void useClasses() {
51   int i = 0;
52   [Int3 message:1];
55 // RUN: c-index-test -code-completion-at=%s:51:11 %s | FileCheck -check-prefix=CHECK-USE %s
56 // RUN: c-index-test -code-completion-at=%s:52:17 %s | FileCheck -check-prefix=CHECK-USE %s
57 // CHECK-USE: ObjCInterfaceDecl:{TypedText Int2} (50)
58 // CHECK-USE: ObjCInterfaceDecl:{TypedText Int3} (50)
59 // CHECK-USE-NOT: Int1
60 // CHECK-USE-NOT: Int4
62 // Caching should work too:
63 // RUN: env CINDEXTEST_EDITING=1 CINDEXTEST_COMPLETION_CACHING=1 c-index-test -code-completion-at=%s:51:11 %s | FileCheck -check-prefix=CHECK-USE %s