1// RUN: rm -rf %t 2// RUN: mkdir %t 3// RUN: c-index-test -test-load-source all -comments-xml-schema=%S/../../bindings/xml/comment-xml-schema.rng %s > %t/out 4// RUN: FileCheck %s < %t/out 5// rdar://12379114 6 7/*! 8 @interface IOCommandGate 9 @brief This is a brief 10 @abstract Single-threaded work-loop client request mechanism. 11 @discussion An IOCommandGate instance is an extremely light weight mechanism that 12 executes an action on the driver's work-loop... 13 @textblock 14 Many discussions about text 15 Many1 discussions about text 16 Many2 discussions about text 17 @/textblock 18 @link //un_ref/c/func/function_name link text goes here @/link 19 @see //un_ref/doc/uid/XX0000011 I/O Kit Fundamentals 20 @seealso //k_ref/doc/uid/XX30000905-CH204 Programming 21 */ 22@interface IOCommandGate 23@end 24 25// CHECK: (CXComment_BlockCommand CommandName=[abstract] 26// CHECK-NEXT: (CXComment_Paragraph 27// CHECK-NEXT: (CXComment_Text Text=[ Single-threaded work-loop client request mechanism.] HasTrailingNewline) 28// CHECK: (CXComment_BlockCommand CommandName=[discussion] 29// CHECK-NEXT: (CXComment_Paragraph 30// CHECK-NEXT: (CXComment_Text Text=[ An IOCommandGate instance is an extremely light weight mechanism that] HasTrailingNewline) 31// CHECK-NEXT: (CXComment_Text Text=[ executes an action on the driver's work-loop...] HasTrailingNewline) 32// CHECK: (CXComment_VerbatimBlockCommand CommandName=[textblock] 33// CHECK-NEXT: (CXComment_VerbatimBlockLine Text=[ Many discussions about text]) 34// CHECK-NEXT: (CXComment_VerbatimBlockLine Text=[ Many1 discussions about text]) 35// CHECK-NEXT: (CXComment_VerbatimBlockLine Text=[ Many2 discussions about text])) 36// CHECK-NEXT: (CXComment_Paragraph IsWhitespace 37 38// CHECK: (CXComment_VerbatimBlockCommand CommandName=[link] 39// CHECK-NEXT: (CXComment_VerbatimBlockLine Text=[ //un_ref/c/func/function_name link text goes here ])) 40// CHECK-NEXT: (CXComment_Paragraph IsWhitespace 41// CHECK-NEXT: (CXComment_Text Text=[ ] IsWhitespace)) 42// CHECK: (CXComment_BlockCommand CommandName=[see] 43// CHECK-NEXT: (CXComment_Paragraph 44// CHECK-NEXT: (CXComment_Text Text=[ //un_ref/doc/uid/XX0000011 I/O Kit Fundamentals] HasTrailingNewline) 45// CHECK-NEXT: (CXComment_Text Text=[ ] IsWhitespace))) 46// CHECK: (CXComment_BlockCommand CommandName=[seealso] 47// CHECK-NEXT: (CXComment_Paragraph 48// CHECK-NEXT: (CXComment_Text Text=[ //k_ref/doc/uid/XX30000905-CH204 Programming]) 49 50// rdar://12379053 51/*! 52\arg \c AlignLeft left alignment. 53\li \c AlignRight right alignment. 54 55 No other types of alignment are supported. 56*/ 57struct S { 58 int AlignLeft; 59 int AlignRight; 60}; 61 62// CHECK: (CXComment_BlockCommand CommandName=[arg] 63// CHECK-NEXT: (CXComment_Paragraph 64// CHECK-NEXT: (CXComment_Text Text=[ ] IsWhitespace) 65// CHECK-NEXT: (CXComment_InlineCommand CommandName=[c] RenderMonospaced Arg[0]=AlignLeft) 66// CHECK-NEXT: (CXComment_Text Text=[ left alignment.] HasTrailingNewline))) 67// CHECK: (CXComment_BlockCommand CommandName=[li] 68// CHECK-NEXT: (CXComment_Paragraph 69// CHECK-NEXT: (CXComment_Text Text=[ ] IsWhitespace) 70// CHECK-NEXT: (CXComment_InlineCommand CommandName=[c] RenderMonospaced Arg[0]=AlignRight) 71// CHECK-NEXT: (CXComment_Text Text=[ right alignment.]))) 72// CHECK: (CXComment_Paragraph 73// CHECK-NEXT: (CXComment_Text Text=[ No other types of alignment are supported.])) 74 75// rdar://12379053 76/*! \struct Test 77 * Normal text. 78 * 79 * \par User defined paragraph: 80 * Contents of the paragraph. 81 * 82 * \par 83 * New paragraph under the same heading. 84 * 85 * \note 86 * This note consists of two paragraphs. 87 * This is the first paragraph. 88 * 89 * \par 90 * And this is the second paragraph. 91 * 92 * More normal text. 93 */ 94 95struct Test {int filler;}; 96 97// CHECK: (CXComment_BlockCommand CommandName=[par] 98// CHECK-NEXT: (CXComment_Paragraph 99// CHECK-NEXT: (CXComment_Text Text=[ User defined paragraph:] HasTrailingNewline) 100// CHECK-NEXT: (CXComment_Text Text=[ Contents of the paragraph.]))) 101// CHECK: (CXComment_BlockCommand CommandName=[par] 102// CHECK-NEXT: (CXComment_Paragraph 103// CHECK-NEXT: (CXComment_Text Text=[ New paragraph under the same heading.]))) 104// CHECK: (CXComment_BlockCommand CommandName=[note] 105// CHECK-NEXT: (CXComment_Paragraph 106// CHECK-NEXT: (CXComment_Text Text=[ This note consists of two paragraphs.] HasTrailingNewline) 107// CHECK-NEXT: (CXComment_Text Text=[ This is the first paragraph.]))) 108// CHECK: (CXComment_BlockCommand CommandName=[par] 109// CHECK-NEXT: (CXComment_Paragraph 110// CHECK-NEXT: (CXComment_Text Text=[ And this is the second paragraph.]))) 111 112