Synopsis - Cross-Reference

File: /tests/Parsers/Cxx/expected/groups2.xml
  1<?xml version='1.0' encoding='ISO-8859-1'?>
  2<ast>
  3 <declarations>
  4  <instance accessibility="0" class="Synopsis.AST.Class" file="Parsers/Cxx/input/groups2.cc" language="C++" line="8" name="foo" type="struct">
  5   <comments>
  6    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="1" suspect="1">
  7     <text>
  8      // group documentation
  9// @group first group { some comment
 10
 11     </text>
 12    </instance>
 13    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="4" suspect="1">
 14     <text>
 15      // continued and
 16// extending over multiple lines
 17
 18     </text>
 19    </instance>
 20    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="7" suspect="0">
 21     <text>
 22      // another comment
 23
 24     </text>
 25    </instance>
 26   </comments>
 27   <declarations>
 28    <instance accessibility="3" class="Synopsis.AST.Operation" file="Parsers/Cxx/input/groups2.cc" language="C++" line="18" name="foo.make_fn()" realname="make_fn" type="member function">
 29     <comments>
 30      <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="10" suspect="1">
 31       <text>
 32        // helper functions
 33
 34       </text>
 35      </instance>
 36      <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="12" suspect="1">
 37       <text>
 38        // blabla
 39  //
 40  // @group make_fn {
 41
 42       </text>
 43      </instance>
 44      <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="16" suspect="0">
 45       <text>
 46        // bla.
 47  // blabla
 48
 49       </text>
 50      </instance>
 51     </comments>
 52     <returnType>
 53      <instance class="Synopsis.Type.Base" language="C++" name="int"/>
 54     </returnType>
 55    </instance>
 56    <instance accessibility="3" class="Synopsis.AST.Operation" file="Parsers/Cxx/input/groups2.cc" language="C++" line="21" name="foo.make_fn(int)" realname="make_fn" type="member function">
 57     <comments>
 58      <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="19" suspect="0">
 59       <text>
 60        // bla.
 61  // blabla
 62
 63       </text>
 64      </instance>
 65     </comments>
 66     <parameters>
 67      <instance class="Synopsis.AST.Parameter" identifier="" value="">
 68       <type/>
 69      </instance>
 70     </parameters>
 71     <returnType/>
 72    </instance>
 73    <instance accessibility="3" class="Synopsis.AST.Builtin" file="Parsers/Cxx/input/groups2.cc" language="C++" line="19" name="EOS" type="EOS">
 74     <comments>
 75      <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="22" suspect="0">
 76       <text>
 77        // }
 78  // @group } is this lost ?
 79
 80       </text>
 81      </instance>
 82     </comments>
 83    </instance>
 84   </declarations>
 85  </instance>
 86  <instance accessibility="0" class="Synopsis.AST.Variable" constr="0" file="Parsers/Cxx/input/groups2.cc" language="C++" line="25" name="test1" type="global variable">
 87   <vtype/>
 88  </instance>
 89  <instance accessibility="0" class="Synopsis.AST.Variable" constr="0" file="Parsers/Cxx/input/groups2.cc" language="C++" line="26" name="test2" type="global variable">
 90   <vtype/>
 91  </instance>
 92  <instance accessibility="0" class="Synopsis.AST.Variable" constr="0" file="Parsers/Cxx/input/groups2.cc" language="C++" line="28" name="bar" type="global variable">
 93   <comments>
 94    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="27" suspect="0">
 95     <text>
 96      // @group }
 97
 98     </text>
 99    </instance>
100   </comments>
101   <vtype/>
102  </instance>
103  <instance accessibility="0" class="Synopsis.AST.Variable" constr="0" file="Parsers/Cxx/input/groups2.cc" language="C++" line="31" name="test3" type="global variable">
104   <comments>
105    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="29" suspect="0">
106     <text>
107      // another group
108// @group tests {
109
110     </text>
111    </instance>
112   </comments>
113   <vtype/>
114  </instance>
115  <instance accessibility="0" class="Synopsis.AST.Variable" constr="0" file="Parsers/Cxx/input/groups2.cc" language="C++" line="32" name="test4" type="global variable">
116   <vtype/>
117  </instance>
118  <instance accessibility="0" class="Synopsis.AST.Variable" constr="0" file="Parsers/Cxx/input/groups2.cc" language="C++" line="38" name="f" type="global variable">
119   <comments>
120    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="33" suspect="1">
121     <text>
122      // @group }
123
124     </text>
125    </instance>
126    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="35" suspect="1">
127     <text>
128      // @group outer {
129
130     </text>
131    </instance>
132    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="37" suspect="0">
133     <text>
134      // @group inner {
135
136     </text>
137    </instance>
138   </comments>
139   <vtype/>
140  </instance>
141  <instance accessibility="0" class="Synopsis.AST.Variable" constr="0" file="Parsers/Cxx/input/groups2.cc" language="C++" line="40" name="test5" type="global variable">
142   <comments>
143    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="39" suspect="0">
144     <text>
145      // @group xxx { not a group
146
147     </text>
148    </instance>
149   </comments>
150   <vtype/>
151  </instance>
152  <instance accessibility="0" class="Synopsis.AST.Variable" constr="0" file="Parsers/Cxx/input/groups2.cc" language="C++" line="44" name="test6" type="global variable">
153   <comments>
154    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="41" suspect="0">
155     <text>
156      // @group } this is accepted
157// @group }
158// and this too
159
160     </text>
161    </instance>
162   </comments>
163   <vtype/>
164  </instance>
165  <instance accessibility="0" class="Synopsis.AST.Builtin" file="Parsers/Cxx/input/groups2.cc" language="C++" line="45" name="EOS" type="EOS">
166   <comments>
167    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/groups2.cc" line="45" suspect="1">
168     <text>
169      // @group }
170
171     </text>
172    </instance>
173   </comments>
174  </instance>
175 </declarations>
176 <types>
177  <instance class="Synopsis.Type.Declared" language="C++" name="EOS">
178   <declaration/>
179  </instance>
180  <instance class="Synopsis.Type.Declared" language="C++" name="bar">
181   <declaration/>
182  </instance>
183  <instance class="Synopsis.Type.Declared" language="C++" name="f">
184   <declaration/>
185  </instance>
186  <instance class="Synopsis.Type.Declared" language="C++" name="foo">
187   <declaration/>
188  </instance>
189  <instance class="Synopsis.Type.Declared" language="C++" name="foo.make_fn()">
190   <declaration/>
191  </instance>
192  <instance class="Synopsis.Type.Declared" language="C++" name="foo.make_fn(int)">
193   <declaration/>
194  </instance>
195  <instance class="Synopsis.Type.Declared" language="C++" name="test1">
196   <declaration/>
197  </instance>
198  <instance class="Synopsis.Type.Declared" language="C++" name="test2">
199   <declaration/>
200  </instance>
201  <instance class="Synopsis.Type.Declared" language="C++" name="test3">
202   <declaration/>
203  </instance>
204  <instance class="Synopsis.Type.Declared" language="C++" name="test4">
205   <declaration/>
206  </instance>
207  <instance class="Synopsis.Type.Declared" language="C++" name="test5">
208   <declaration/>
209  </instance>
210  <instance class="Synopsis.Type.Declared" language="C++" name="test6">
211   <declaration/>
212  </instance>
213 </types>
214 <files>
215  <instance class="Synopsis.AST.SourceFile" filename="Parsers/Cxx/input/groups2.cc" is_main="1" language="C++">
216   <declarations/>
217   <macro_calls/>
218  </instance>
219 </files>
220</ast>