comment-misc-tags.m revision 75dbdfa6f80bf6b35d858b6557e9fbb2854e2ba0
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] HasTrailingNewline)
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