93 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
			
		
		
	
	
			93 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
| // Note: the run lines follow their respective tests, since line/column numbers
 | |
| // matter in this test.
 | |
| // This test is for when property accessors do not have their own code 
 | |
| // completion comments. Use those in their properties in this case. 
 | |
| // rdar://12791315
 | |
| 
 | |
| @interface AppDelegate
 | |
| /**
 | |
|   \brief This is ReadonlyProperty
 | |
| */
 | |
| @property (readonly, getter = ReadonlyGetter) id MyProperty;
 | |
| 
 | |
| /**
 | |
|   \brief This is GeneralProperty
 | |
| */
 | |
| @property int GeneralProperty;
 | |
| 
 | |
| /**
 | |
|   \brief This is PropertyInPrimaryClass
 | |
| */
 | |
| @property (copy, nonatomic) id PropertyInPrimaryClass;
 | |
| 
 | |
| - (void) setThisRecord : (id)arg;
 | |
| - (id) Record;
 | |
| @end
 | |
| 
 | |
| 
 | |
| @interface AppDelegate()
 | |
| - (id) GetterInClassExtension;
 | |
| /**
 | |
|   \brief This is Record
 | |
| */
 | |
| @property (copy, setter = setThisRecord:) id Record;
 | |
| @end
 | |
| 
 | |
| @interface AppDelegate()
 | |
| /**
 | |
|   \brief This is PropertyInClassExtension
 | |
| */
 | |
| @property (copy, getter = GetterInClassExtension) id PropertyInClassExtension;
 | |
| 
 | |
| - (id) PropertyInPrimaryClass;
 | |
| @end
 | |
|   
 | |
| @implementation AppDelegate
 | |
| - (id) PropertyInPrimaryClass { 
 | |
|   id p = [self ReadonlyGetter];
 | |
|   p = [self GetterInClassExtension];
 | |
|   p = [self PropertyInPrimaryClass];
 | |
|   p = [self Record];
 | |
|   [self setThisRecord : (id)0 ];
 | |
|   p = self.GetterInClassExtension;
 | |
|   return 0; 
 | |
| }
 | |
| @end
 | |
| // RUN: env CINDEXTEST_COMPLETION_BRIEF_COMMENTS=1 c-index-test -code-completion-at=%s:47:16 %s | FileCheck -check-prefix=CHECK-CC1 %s
 | |
| // CHECK-CC1: {TypedText ReadonlyGetter}{{.*}}(brief comment: This is ReadonlyProperty)
 | |
| 
 | |
| // RUN: env CINDEXTEST_COMPLETION_BRIEF_COMMENTS=1 c-index-test -code-completion-at=%s:48:13 %s | FileCheck -check-prefix=CHECK-CC2 %s
 | |
| // CHECK-CC2: {TypedText GetterInClassExtension}{{.*}}(brief comment: This is PropertyInClassExtension) 
 | |
| 
 | |
| // RUN: env CINDEXTEST_COMPLETION_BRIEF_COMMENTS=1 c-index-test -code-completion-at=%s:49:13 %s | FileCheck -check-prefix=CHECK-CC3 %s
 | |
| // CHECK-CC3: {TypedText PropertyInPrimaryClass}{{.*}}(brief comment: This is PropertyInPrimaryClass)
 | |
| 
 | |
| // RUN: env CINDEXTEST_COMPLETION_BRIEF_COMMENTS=1 c-index-test -code-completion-at=%s:50:13 %s | FileCheck -check-prefix=CHECK-CC4 %s
 | |
| // CHECK-CC4: {TypedText Record}{{.*}}(brief comment: This is Record)
 | |
| 
 | |
| // RUN: env CINDEXTEST_COMPLETION_BRIEF_COMMENTS=1 c-index-test -code-completion-at=%s:51:9 %s | FileCheck -check-prefix=CHECK-CC5 %s
 | |
| // CHECK-CC5: {TypedText setThisRecord:}{Placeholder (id)}{{.*}}(brief comment: This is Record)
 | |
| 
 | |
| // RUN: env CINDEXTEST_COMPLETION_BRIEF_COMMENTS=1 c-index-test -code-completion-at=%s:52:12 %s | FileCheck -check-prefix=CHECK-CC6 %s
 | |
| // CHECK-CC6: {TypedText GetterInClassExtension}{{.*}}(brief comment: This is PropertyInClassExtension) 
 | |
| 
 | |
| @interface AnotherAppDelegate
 | |
| /**
 | |
|   \brief This is ReadonlyProperty
 | |
| */
 | |
| @property (getter = ReadonlyGetter) int MyProperty;
 | |
| /**
 | |
|   \brief This is getter = ReadonlyGetter
 | |
| */
 | |
| - (int) ReadonlyGetter;
 | |
| @end
 | |
| 
 | |
| @implementation AnotherAppDelegate
 | |
| - (int) PropertyInPrimaryClass { 
 | |
| self.ReadonlyGetter;
 | |
| }
 | |
| @end
 | |
| // RUN: env CINDEXTEST_COMPLETION_BRIEF_COMMENTS=1 c-index-test -code-completion-at=%s:87:6 %s | FileCheck -check-prefix=CHECK-CC7 %s
 | |
| // CHECK-CC7: {TypedText ReadonlyGetter}{{.*}}(brief comment: This is getter = ReadonlyGetter) 
 | |
| 
 |