Synopsis - Cross-Reference

File: /tests/Parsers/Cxx/expected/func_ptr.xml
  1<?xml version='1.0' encoding='ISO-8859-1'?>
  2<ast>
  3 <declarations>
  4  <instance accessibility="0" class="Synopsis.AST.Typedef" constr="0" file="Parsers/Cxx/input/func_ptr.cc" language="C++" line="3" name="PyObject" type="typedef">
  5   <comments>
  6    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/func_ptr.cc" line="1" suspect="1">
  7     <text>
  8      // Tests function pointers
  9
 10     </text>
 11    </instance>
 12   </comments>
 13   <alias>
 14    <instance class="Synopsis.Type.Base" language="C++" name="void"/>
 15   </alias>
 16  </instance>
 17  <instance accessibility="0" class="Synopsis.AST.Function" file="Parsers/Cxx/input/func_ptr.cc" language="C++" line="6" name="insert(void*(*)(PyObject*),bool)" realname="insert" type="function">
 18   <comments>
 19    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/func_ptr.cc" line="5" suspect="0">
 20     <text>
 21      // A function which takes a func ptr as a parameter
 22
 23     </text>
 24    </instance>
 25   </comments>
 26   <parameters>
 27    <instance class="Synopsis.AST.Parameter" identifier="convert" value="">
 28     <type>
 29      <instance class="Synopsis.Type.Function" language="C++">
 30       <params>
 31        <instance class="Synopsis.Type.Modifier" language="C++">
 32         <alias>
 33          <instance class="Synopsis.Type.Declared" language="C++" name="PyObject">
 34           <declaration/>
 35          </instance>
 36         </alias>
 37         <postmod>
 38          *
 39         </postmod>
 40        </instance>
 41       </params>
 42       <premod>
 43        *
 44       </premod>
 45       <returnType>
 46        <instance class="Synopsis.Type.Modifier" language="C++">
 47         <alias/>
 48         <postmod>
 49          *
 50         </postmod>
 51        </instance>
 52       </returnType>
 53      </instance>
 54     </type>
 55    </instance>
 56    <instance class="Synopsis.AST.Parameter" identifier="yesno" value="">
 57     <type>
 58      <instance class="Synopsis.Type.Base" language="C++" name="bool"/>
 59     </type>
 60    </instance>
 61   </parameters>
 62   <returnType/>
 63  </instance>
 64  <instance accessibility="0" class="Synopsis.AST.Function" file="Parsers/Cxx/input/func_ptr.cc" language="C++" line="9" name="insert(void*(*)(PyObject*,int),bool)" realname="insert" type="function">
 65   <comments>
 66    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/func_ptr.cc" line="8" suspect="0">
 67     <text>
 68      // A function which takes a func ptr as a parameter
 69
 70     </text>
 71    </instance>
 72   </comments>
 73   <parameters>
 74    <instance class="Synopsis.AST.Parameter" identifier="convert" value="">
 75     <type>
 76      <instance class="Synopsis.Type.Function" language="C++">
 77       <params>
 78        <instance class="Synopsis.Type.Modifier" language="C++">
 79         <alias/>
 80         <postmod>
 81          *
 82         </postmod>
 83        </instance>
 84        <instance class="Synopsis.Type.Base" language="C++" name="int"/>
 85       </params>
 86       <premod>
 87        *
 88       </premod>
 89       <returnType>
 90        <instance class="Synopsis.Type.Modifier" language="C++">
 91         <alias/>
 92         <postmod>
 93          *
 94         </postmod>
 95        </instance>
 96       </returnType>
 97      </instance>
 98     </type>
 99    </instance>
100    <instance class="Synopsis.AST.Parameter" identifier="yesno" value="">
101     <type/>
102    </instance>
103   </parameters>
104   <returnType/>
105  </instance>
106  <instance accessibility="0" class="Synopsis.AST.Function" file="Parsers/Cxx/input/func_ptr.cc" language="C++" line="12" name="insert2(int)" realname="insert2" type="function">
107   <comments>
108    <instance class="Synopsis.AST.Comment" file="Parsers/Cxx/input/func_ptr.cc" line="11" suspect="0">
109     <text>
110      // A function which returns a func ptr
111
112     </text>
113    </instance>
114   </comments>
115   <parameters>
116    <instance class="Synopsis.AST.Parameter" identifier="" value="">
117     <type/>
118    </instance>
119   </parameters>
120   <returnType>
121    <instance class="Synopsis.Type.Function" language="C++">
122     <params>
123      <instance class="Synopsis.Type.Modifier" language="C++">
124       <alias/>
125       <postmod>
126        *
127       </postmod>
128      </instance>
129     </params>
130     <premod>
131      *
132     </premod>
133     <returnType>
134      <instance class="Synopsis.Type.Modifier" language="C++">
135       <alias/>
136       <postmod>
137        *
138       </postmod>
139      </instance>
140     </returnType>
141    </instance>
142   </returnType>
143  </instance>
144  <instance accessibility="0" class="Synopsis.AST.Function" file="Parsers/Cxx/input/func_ptr.cc" language="C++" line="14" name="main()" realname="main" type="function">
145   <returnType/>
146  </instance>
147 </declarations>
148 <types>
149  <instance class="Synopsis.Type.Declared" language="C++" name="insert(void*(*)(PyObject*),bool)">
150   <declaration/>
151  </instance>
152  <instance class="Synopsis.Type.Declared" language="C++" name="insert(void*(*)(PyObject*,int),bool)">
153   <declaration/>
154  </instance>
155  <instance class="Synopsis.Type.Declared" language="C++" name="insert2(int)">
156   <declaration/>
157  </instance>
158  <instance class="Synopsis.Type.Declared" language="C++" name="main()">
159   <declaration/>
160  </instance>
161 </types>
162 <files>
163  <instance class="Synopsis.AST.SourceFile" filename="Parsers/Cxx/input/func_ptr.cc" is_main="1" language="C++">
164   <declarations/>
165   <macro_calls/>
166  </instance>
167 </files>
168</ast>