1debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor/* Run lines are at the end, since line/column matter in this test. */ 219a2e1e609e6a9db13f649ccd9f4d1ec16aa5acdDouglas Gregor@interface MyClass { @public } 3debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor@end 4debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor 5debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor@implementation MyClass 6debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor@end 7debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor 80c9397b58fe69d34f3111c8ffdd450b061eab8f6Douglas Gregor// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:2:2 %s | FileCheck -check-prefix=CHECK-CC1 %s 978d2fda9403bf61e9d2b8a0686b88d03064a12f0Douglas Gregor// CHECK-CC1: {TypedText class}{HorizontalSpace }{Placeholder name} 10fa9f0a085ea5a535fa8c7f7782b39f838ceb2130Douglas Gregor// CHECK-CC1: {TypedText compatibility_alias}{HorizontalSpace }{Placeholder alias}{HorizontalSpace }{Placeholder class} 11fa9f0a085ea5a535fa8c7f7782b39f838ceb2130Douglas Gregor// CHECK-CC1: {TypedText implementation}{HorizontalSpace }{Placeholder class} 12fa9f0a085ea5a535fa8c7f7782b39f838ceb2130Douglas Gregor// CHECK-CC1: {TypedText interface}{HorizontalSpace }{Placeholder class} 13fa9f0a085ea5a535fa8c7f7782b39f838ceb2130Douglas Gregor// CHECK-CC1: {TypedText protocol}{HorizontalSpace }{Placeholder protocol} 14debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor 150c9397b58fe69d34f3111c8ffdd450b061eab8f6Douglas Gregor// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:3:2 %s | FileCheck -check-prefix=CHECK-CC2 %s 16debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor// CHECK-CC2: {TypedText end} 17debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor// CHECK-CC2: {TypedText optional} 18debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor// CHECK-CC2: {TypedText property} 19debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor// CHECK-CC2: {TypedText required} 20debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor 210c9397b58fe69d34f3111c8ffdd450b061eab8f6Douglas Gregor// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:6:2 %s | FileCheck -check-prefix=CHECK-CC3 %s 22fa9f0a085ea5a535fa8c7f7782b39f838ceb2130Douglas Gregor// CHECK-CC3: {TypedText dynamic}{HorizontalSpace }{Placeholder property} 23debc7cbc085252e68d7672d68620cfab1c714e1bDouglas Gregor// CHECK-CC3: {TypedText end} 24fa9f0a085ea5a535fa8c7f7782b39f838ceb2130Douglas Gregor// CHECK-CC3: {TypedText synthesize}{HorizontalSpace }{Placeholder property} 2513529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor 260c9397b58fe69d34f3111c8ffdd450b061eab8f6Douglas Gregor// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:2:1 %s | FileCheck -check-prefix=CHECK-CC4 %s 2778d2fda9403bf61e9d2b8a0686b88d03064a12f0Douglas Gregor// CHECK-CC4: NotImplemented:{TypedText @class}{HorizontalSpace }{Placeholder name} 2813529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor// CHECK-CC4: NotImplemented:{TypedText @compatibility_alias}{HorizontalSpace }{Placeholder alias}{HorizontalSpace }{Placeholder class} 2913529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor// CHECK-CC4: NotImplemented:{TypedText @implementation}{HorizontalSpace }{Placeholder class} 3013529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor// CHECK-CC4: NotImplemented:{TypedText @interface}{HorizontalSpace }{Placeholder class} 3113529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor// CHECK-CC4: NotImplemented:{TypedText @protocol}{HorizontalSpace }{Placeholder protocol} 32916033e99a497f2bd499dcf5429fc9eccf1e49eeDouglas Gregor// CHECK-CC4: NotImplemented:{TypedText _Bool} 3313529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor// CHECK-CC4: TypedefDecl:{TypedText Class} 3413529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor// CHECK-CC4: TypedefDecl:{TypedText id} 3513529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor// CHECK-CC4: TypedefDecl:{TypedText SEL} 3613529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor 370c9397b58fe69d34f3111c8ffdd450b061eab8f6Douglas Gregor// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:3:1 %s | FileCheck -check-prefix=CHECK-CC5 %s 3813529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor// CHECK-CC5: {TypedText @end} 3913529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor// CHECK-CC5: {TypedText @optional} 4013529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor// CHECK-CC5: {TypedText @property} 4113529ab3783ec557034e2fce4d4152372aaabe64Douglas Gregor// CHECK-CC5: {TypedText @required} 4219a2e1e609e6a9db13f649ccd9f4d1ec16aa5acdDouglas Gregor 430c9397b58fe69d34f3111c8ffdd450b061eab8f6Douglas Gregor// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:2:23 %s | FileCheck -check-prefix=CHECK-CC6 %s 4419a2e1e609e6a9db13f649ccd9f4d1ec16aa5acdDouglas Gregor// CHECK-CC6: NotImplemented:{TypedText package} 4519a2e1e609e6a9db13f649ccd9f4d1ec16aa5acdDouglas Gregor// CHECK-CC6: NotImplemented:{TypedText private} 4619a2e1e609e6a9db13f649ccd9f4d1ec16aa5acdDouglas Gregor// CHECK-CC6: NotImplemented:{TypedText protected} 4719a2e1e609e6a9db13f649ccd9f4d1ec16aa5acdDouglas Gregor// CHECK-CC6: NotImplemented:{TypedText public} 4819a2e1e609e6a9db13f649ccd9f4d1ec16aa5acdDouglas Gregor 490c9397b58fe69d34f3111c8ffdd450b061eab8f6Douglas Gregor// RUN: env CINDEXTEST_CODE_COMPLETE_PATTERNS=1 c-index-test -code-completion-at=%s:2:22 %s | FileCheck -check-prefix=CHECK-CC7 %s 5019a2e1e609e6a9db13f649ccd9f4d1ec16aa5acdDouglas Gregor// CHECK-CC7: NotImplemented:{TypedText @package} 5119a2e1e609e6a9db13f649ccd9f4d1ec16aa5acdDouglas Gregor// CHECK-CC7: NotImplemented:{TypedText @private} 5219a2e1e609e6a9db13f649ccd9f4d1ec16aa5acdDouglas Gregor// CHECK-CC7: NotImplemented:{TypedText @protected} 5319a2e1e609e6a9db13f649ccd9f4d1ec16aa5acdDouglas Gregor// CHECK-CC7: NotImplemented:{TypedText @public} 5419a2e1e609e6a9db13f649ccd9f4d1ec16aa5acdDouglas Gregor// CHECK-CC7: NotImplemented:{TypedText _Bool} 55