12 |
--> |
--> |
13 |
<odl_specification> |
<odl_specification> |
14 |
<odl_definition> |
<odl_definition> |
15 |
<typedef> |
|
16 |
<type_spec>float</type_spec> |
<typedef type="float"> |
17 |
<declarators> |
<alias>FloatType</alias> |
|
<declarator>FloatType</declarator> |
|
|
</declarators> |
|
18 |
</typedef> |
</typedef> |
19 |
|
|
20 |
<typedef> |
<typedef> |
21 |
<type_spec> |
<array>float</array> |
22 |
<array><type_spec>float</type_spec></array> |
<alias>FloatArrayType</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>FloatArrayType</declarator> |
|
|
</declarators> |
|
23 |
</typedef> |
</typedef> |
24 |
|
|
25 |
<typedef> |
<typedef> |
26 |
<type_spec> |
<sequence>float</sequence> |
27 |
<sequence><type_spec>float</type_spec></sequence> |
<alias>FloatSequenceType</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>FloatSequenceType</declarator> |
|
|
</declarators> |
|
28 |
</typedef> |
</typedef> |
29 |
|
|
30 |
<typedef> |
<typedef type="string"> |
31 |
<type_spec>string</type_spec> |
<alias>StringType</alias> |
|
<declarators> |
|
|
<declarator>StringType</declarator> |
|
|
</declarators> |
|
32 |
</typedef> |
</typedef> |
33 |
|
|
34 |
<typedef> |
<typedef type="GNUe::Sadist"> |
35 |
<type_spec> |
<alias>Masta</alias> |
|
<scoped_name>GNUe::Sadist</scoped_name> |
|
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>Masta</declarator> |
|
|
</declarators> |
|
36 |
</typedef> |
</typedef> |
37 |
|
|
38 |
<struct id="Bar"> |
<struct name="Bar"> |
39 |
<members> |
<members> |
40 |
<member> |
<member name="barname">string</member> |
41 |
<type_spec>string</type_spec> |
<member name="barprice">float"</member> |
42 |
<declarators> |
<member name="barz">short</member> |
43 |
<declarator>barname</declarator> |
<member name="fubar">unsigned long</member> |
44 |
</declarators> |
<member name="fbar">unsigned short</member> |
45 |
</member> |
<member name="bars">long long</member> |
|
<member> |
|
|
<type_spec>float</type_spec> |
|
|
<declarators> |
|
|
<declarator>barprice</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec>short</type_spec> |
|
|
<declarators> |
|
|
<declarator>barz</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec>unsigned long</type_spec> |
|
|
<declarators> |
|
|
<declarator>fubar</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec>unsigned short</type_spec> |
|
|
<declarators> |
|
|
<declarator>fbar</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec>long long</type_spec> |
|
|
<declarators> |
|
|
<declarator>bars</declarator> |
|
|
</declarators> |
|
|
</member> |
|
46 |
</members> |
</members> |
47 |
</struct> |
</struct> |
48 |
|
|
49 |
<union id="Trout"> |
<union name="Trout"> |
50 |
<switch> |
<switch type="boolean"> |
51 |
<type_spec>boolean</type_spec> |
<case label="TRUE" name="brown_trout">string</case> |
52 |
<case> |
<case label="FALSE" name="rainbow_trout">string</case> |
53 |
<boolean>TRUE</boolean> |
<default name="trout">string</default> |
|
<type_spec>string</type_spec> |
|
|
<declarator>brown_trout</declarator> |
|
|
</case> |
|
|
<case> |
|
|
<boolean>FLASE</boolean> |
|
|
<type_spec>string</type_spec> |
|
|
<declarator>rainbow_trout</declarator> |
|
|
</case> |
|
|
<default> |
|
|
<type_spec>string</type_spec> |
|
|
<declarator>trout</declarator> |
|
|
</default> |
|
54 |
</switch> |
</switch> |
55 |
</union> |
</union> |
56 |
|
|
57 |
<enum id="TroutType"> |
<enum name="TroutType"> |
58 |
<enumerator>brown</enumerator> |
<element>brown</element> |
59 |
<enumerator>rainbow</enumerator> |
<element>rainbow</element> |
60 |
<enumerator>lake</enumerator> |
<element>lake</element> |
61 |
</enum> |
</enum> |
62 |
|
|
63 |
<typedef> |
<typedef type="Bar"> |
64 |
<type_spec><struct>Bar</struct></type_spec> |
<alias>bar</alias> |
|
<declarators> |
|
|
<declarator>bar</declarator> |
|
|
</declarators> |
|
65 |
</typedef> |
</typedef> |
66 |
|
|
67 |
<typedef> |
<typedef type="Trout"> |
68 |
<type_spec><union>Trout</union></type_spec> |
<alias>trout_t</alias> |
|
<declarators> |
|
|
<declarator>trout_t</declarator> |
|
|
</declarators> |
|
69 |
</typedef> |
</typedef> |
70 |
|
|
71 |
<typedef> |
<typedef type="TroutType"> |
72 |
<type_spec><enum>TroutType</enum></type_spec> |
<alias>trout_type</alias> |
|
<declarators> |
|
|
<declarator>trout_type</declarator> |
|
|
</declarators> |
|
73 |
</typedef> |
</typedef> |
74 |
|
|
75 |
<typedef> |
<typedef> |
76 |
<type_spec> |
<dictionary> |
77 |
<dictionary> |
<key>float</key> |
78 |
<key> |
<value>float</value> |
79 |
<type_spec>float</type_spec> |
</dictionary> |
80 |
</key> |
<alias>DictionaryType</alias> |
|
<value> |
|
|
<type_spec>float</type_spec> |
|
|
</value> |
|
|
</dictionary> |
|
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>DictionaryType</declarator> |
|
|
</declarators> |
|
81 |
</typedef> |
</typedef> |
82 |
|
|
83 |
<typedef> |
<typedef> |
84 |
<type_spec> |
<set>float</set> |
85 |
<set><type_spec>float</type_spec></set> |
<alias>SetType</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>SetType</declarator> |
|
|
</declarators> |
|
86 |
</typedef> |
</typedef> |
87 |
|
|
88 |
<typedef> |
<typedef> |
89 |
<type_spec> |
<list>float</list> |
90 |
<list><type_spec>float</type_spec></list> |
<alias>ListType</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>ListType</declarator> |
|
|
</declarators> |
|
91 |
</typedef> |
</typedef> |
92 |
|
|
93 |
<typedef> |
<typedef> |
94 |
<type_spec> |
<bag>float</bag> |
95 |
<bag><type_spec>float</type_spec></bag> |
<alias>BagType</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>BagType</declarator> |
|
|
</declarators> |
|
96 |
</typedef> |
</typedef> |
97 |
|
|
98 |
<!-- Forward declarations --> |
<!-- Forward declarations --> |
99 |
<interface id="GNUe::Sadist"/> |
<interface name="GNUe::Sadist"/> |
100 |
<class id="GNUe::Goats::Chillywilly"/> |
<class name="GNUe::Goats::Chillywilly"/> |
101 |
|
|
102 |
<const id="BIGINT"> |
<const name="BIGINT" type="unsigned long">10000L</const> |
|
<type_spec> |
|
|
<unsigned_long>10000L</unsigned_long> |
|
|
</type_spec> |
|
|
</const> |
|
103 |
|
|
104 |
<exception id="NoModuleError"> |
<exception name="NoModuleError"> |
105 |
<members> |
<members> |
106 |
<member> |
<member name="what">string</member> |
107 |
<type_spec>string</type_spec> |
<member name="line">short</member> |
|
<declarators> |
|
|
<declarator>what</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec>short</type_spec> |
|
|
<declarators> |
|
|
<declarator>line</declarator> |
|
|
</declarators> |
|
|
</member> |
|
108 |
</members> |
</members> |
109 |
</exception> |
</exception> |
110 |
|
|
111 |
<exception id="FubarError"/> |
<exception name="FubarError"/> |
|
|
|
|
<interface id="KungFu"> |
|
|
<operation id="Kick"/> |
|
|
|
|
|
<operation id="Punch"/> |
|
112 |
|
|
113 |
|
<interface name="KungFu"> |
114 |
|
<operation name="Kick"/> |
115 |
|
<operation name="Punch"/> |
116 |
</interface> |
</interface> |
117 |
|
|
118 |
<class id="Dragon"> |
<class name="Dragon"> |
119 |
<inherits> |
<inherits> |
120 |
<interface>KungFu</interface> |
<interface name="KungFu"/> |
121 |
</inherits> |
</inherits> |
122 |
|
<attribute name="sensai">string</attribute> |
123 |
<attribute> |
<operation name="dragonKick"/> |
124 |
<type_spec>string</type_spec> |
<operation name="dragonPunch"/> |
|
<name>sensai</name> |
|
|
</attribute> |
|
|
|
|
|
<operation id="dragonKick"/> |
|
|
|
|
|
<operation id="dragonPunch"/> |
|
125 |
</class> |
</class> |
126 |
|
|
127 |
<module id="GNUe"> |
<module name="GNUe"> |
128 |
<odl_specification> |
<odl_specification> |
129 |
<odl_definition> |
<odl_definition> |
130 |
|
|
131 |
<!-- Tyep declarations --> |
<!-- Type declarations --> |
132 |
|
|
133 |
<!-- base types --> |
<!-- primitive types --> |
134 |
<typedef> |
<typedef type="float"> |
135 |
<type_spec>float</type_spec> |
<alias>Float</alias> |
|
<declarators> |
|
|
<declarator>Float</declarator> |
|
|
</declarators> |
|
136 |
</typedef> |
</typedef> |
137 |
|
|
138 |
<typedef> |
<typedef type="double"> |
139 |
<type_spec>double</type_spec> |
<alias>Double</alias> |
|
<declarators> |
|
|
<declarator>Double</declarator> |
|
|
</declarators> |
|
140 |
</typedef> |
</typedef> |
141 |
|
|
142 |
<typedef> |
<typedef type="long"> |
143 |
<type_spec>long</type_spec> |
<alias>Long</alias> |
|
<declarators> |
|
|
<declarator>Long</declarator> |
|
|
</declarators> |
|
144 |
</typedef> |
</typedef> |
145 |
|
|
146 |
<typedef> |
<typedef type="long long"> |
147 |
<type_spec>long long</type_spec> |
<alias>Long Long</alias> |
|
<declarators> |
|
|
<declarator>Long Long</declarator> |
|
|
</declarators> |
|
148 |
</typedef> |
</typedef> |
149 |
|
|
150 |
<typedef> |
<typedef type="short"> |
151 |
<type_spec>short</type_spec> |
<alias>Short</alias> |
|
<declarators> |
|
|
<declarator>Short</declarator> |
|
|
</declarators> |
|
152 |
</typedef> |
</typedef> |
153 |
|
|
154 |
<typedef> |
<typedef type="unsigned long"> |
155 |
<type_spec>unsigned long</type_spec> |
<alias>Unsigned Long</alias> |
|
<declarators> |
|
|
<declarator>Unsigned Long</declarator> |
|
|
</declarators> |
|
156 |
</typedef> |
</typedef> |
157 |
|
|
158 |
<typedef> |
<typedef type="unsigned short"> |
159 |
<type_spec>unsigned short</type_spec> |
<alias>Unsigned Short</alias> |
|
<declarators> |
|
|
<declarator>Unsigned Short</declarator> |
|
|
</declarators> |
|
160 |
</typedef> |
</typedef> |
161 |
|
|
162 |
<typedef> |
<typedef type="char"> |
163 |
<type_spec>char</type_spec> |
<alias>Char</alias> |
|
<declarators> |
|
|
<declarator>Char</declarator> |
|
|
</declarators> |
|
164 |
</typedef> |
</typedef> |
165 |
|
|
166 |
<typedef> |
<typedef type="boolean"> |
167 |
<type_spec>boolean</type_spec> |
<alias>Bool</alias> |
|
<declarators> |
|
|
<declarator>Bool</declarator> |
|
|
</declarators> |
|
168 |
</typedef> |
</typedef> |
169 |
|
|
170 |
<typedef> |
<typedef type="octet"> |
171 |
<type_spec>octet</type_spec> |
<alias>Octet</alias> |
|
<declarators> |
|
|
<declarator>Octet</declarator> |
|
|
</declarators> |
|
172 |
</typedef> |
</typedef> |
173 |
|
|
174 |
<typedef> |
<typedef type="date"> |
175 |
<type_spec>date</type_spec> |
<alias>Date</alias> |
|
<declarators> |
|
|
<declarator>Date</declarator> |
|
|
</declarators> |
|
176 |
</typedef> |
</typedef> |
177 |
|
|
178 |
<typedef> |
<typedef type="time"> |
179 |
<type_spec>time</type_spec> |
<alias>Time</alias> |
|
<declarators> |
|
|
<declarator>Time</declarator> |
|
|
</declarators> |
|
180 |
</typedef> |
</typedef> |
181 |
|
|
182 |
<typedef> |
<typedef type="interval"> |
183 |
<type_spec>interval</type_spec> |
<alias>Interval</alias> |
|
<declarators> |
|
|
<declarator>Interval</declarator> |
|
|
</declarators> |
|
184 |
</typedef> |
</typedef> |
185 |
|
|
186 |
<typedef> |
<typedef type="timestamp"> |
187 |
<type_spec>timestamp</type_spec> |
<alias>Timestamp</alias> |
|
<declarators> |
|
|
<declarator>Timestamp</declarator> |
|
|
</declarators> |
|
188 |
</typedef> |
</typedef> |
189 |
|
|
190 |
<!-- array types --> |
<!-- array types --> |
191 |
<typedef> |
<typedef> |
192 |
<type_spec> |
<array>float</array> |
193 |
<array><type_spec>float</type_spec></array> |
<alias>FloatArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>FloatArray</declarator> |
|
|
</declarators> |
|
194 |
</typedef> |
</typedef> |
195 |
|
|
196 |
<typedef> |
<typedef> |
197 |
<type_spec> |
<array>float</array> |
198 |
<array><type_spec>float</type_spec></array> |
<alias>FloatArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>FloatArray</declarator> |
|
|
</declarators> |
|
199 |
</typedef> |
</typedef> |
200 |
|
|
201 |
<typedef> |
<typedef> |
202 |
<type_spec> |
<array>double</array> |
203 |
<array><type_spec>double</type_spec></array> |
<alias>DoubleArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>DoubleArray</declarator> |
|
|
</declarators> |
|
204 |
</typedef> |
</typedef> |
205 |
|
|
206 |
<typedef> |
<typedef> |
207 |
<type_spec> |
<array>long long</array> |
208 |
<array><type_spec>long long</type_spec></array> |
<alias>LongLongArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>LongLongArray</declarator> |
|
|
</declarators> |
|
209 |
</typedef> |
</typedef> |
210 |
|
|
211 |
<typedef> |
<typedef> |
212 |
<type_spec> |
<array>long</array> |
213 |
<array><type_spec>long</type_spec></array> |
<alias>LongArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>LongArray</declarator> |
|
|
</declarators> |
|
214 |
</typedef> |
</typedef> |
215 |
|
|
216 |
<typedef> |
<typedef> |
217 |
<type_spec> |
<array>short</array> |
218 |
<array><type_spec>short</type_spec></array> |
<alias>ShortArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>ShortArray</declarator> |
|
|
</declarators> |
|
219 |
</typedef> |
</typedef> |
220 |
|
|
221 |
<typedef> |
<typedef> |
222 |
<type_spec> |
<array>unsigned long</array> |
223 |
<array><type_spec>unsigned long</type_spec></array> |
<alias>UnsignedLongArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>UnsignedLongArray</declarator> |
|
|
</declarators> |
|
224 |
</typedef> |
</typedef> |
225 |
|
|
226 |
<typedef> |
<typedef> |
227 |
<type_spec> |
<array>unsigned short</array> |
228 |
<array><type_spec>unsigned short</type_spec></array> |
<alias>UnsignedShortArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>UnsignedShortArray</declarator> |
|
|
</declarators> |
|
229 |
</typedef> |
</typedef> |
230 |
|
|
231 |
<typedef> |
<typedef> |
232 |
<type_spec> |
<array>char</array> |
233 |
<array><type_spec>char</type_spec></array> |
<alias>CharArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>CharArray</declarator> |
|
|
</declarators> |
|
234 |
</typedef> |
</typedef> |
235 |
|
|
236 |
<typedef> |
<typedef> |
237 |
<type_spec> |
<array>boolean</array> |
238 |
<array><type_spec>boolean</type_spec></array> |
<alias>BooleanArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>BooleanArray</declarator> |
|
|
</declarators> |
|
239 |
</typedef> |
</typedef> |
240 |
|
|
241 |
<typedef> |
<typedef> |
242 |
<type_spec> |
<array>octet</array> |
243 |
<array><type_spec>octet</type_spec></array> |
<alias>OctetArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>OctetArray</declarator> |
|
|
</declarators> |
|
244 |
</typedef> |
</typedef> |
245 |
|
|
246 |
<typedef> |
<typedef> |
247 |
<type_spec> |
<array>date</array> |
248 |
<array><type_spec>date</type_spec></array> |
<alias>DateArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>DateArray</declarator> |
|
|
</declarators> |
|
249 |
</typedef> |
</typedef> |
250 |
|
|
251 |
<typedef> |
<typedef> |
252 |
<type_spec> |
<array>time</array> |
253 |
<array><type_spec>time</type_spec></array> |
<alias>TimeArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>TimeArray</declarator> |
|
|
</declarators> |
|
254 |
</typedef> |
</typedef> |
255 |
|
|
256 |
<typedef> |
<typedef> |
257 |
<type_spec> |
<array>interval</array> |
258 |
<array><type_spec>interval</type_spec></array> |
<alias>IntervalArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>IntervalArray</declarator> |
|
|
</declarators> |
|
259 |
</typedef> |
</typedef> |
260 |
|
|
261 |
<typedef> |
<typedef> |
262 |
<type_spec> |
<array>timestamp</array> |
263 |
<array><type_spec>timestamp</type_spec></array> |
<alias>TimestampArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>TimestampArray</declarator> |
|
|
</declarators> |
|
264 |
</typedef> |
</typedef> |
265 |
|
|
266 |
<typedef> |
<typedef> |
267 |
<type_spec> |
<sequence>float</sequence> |
268 |
<sequence><type_spec>float</type_spec></sequence> |
<alias>FloatSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>FloatSequence</declarator> |
|
|
</declarators> |
|
269 |
</typedef> |
</typedef> |
270 |
|
|
271 |
<typedef> |
<typedef> |
272 |
<type_spec> |
<sequence>double</sequence> |
273 |
<sequence><type_spec>double</type_spec></sequence> |
<alias>DoubleSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>DoubleSequence</declarator> |
|
|
</declarators> |
|
274 |
</typedef> |
</typedef> |
275 |
|
|
276 |
<typedef> |
<typedef> |
277 |
<type_spec> |
<sequence>long long</sequence> |
278 |
<sequence><type_spec>long long</type_spec></sequence> |
<alias>LongLongSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>LongLongSequence</declarator> |
|
|
</declarators> |
|
279 |
</typedef> |
</typedef> |
280 |
|
|
281 |
<typedef> |
<typedef> |
282 |
<type_spec> |
<sequence>long</sequence> |
283 |
<sequence><type_spec>long</type_spec></sequence> |
<alias>LongSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>LongSequence</declarator> |
|
|
</declarators> |
|
284 |
</typedef> |
</typedef> |
285 |
|
|
286 |
<typedef> |
<typedef> |
287 |
<type_spec> |
<sequence>short</sequence> |
288 |
<sequence><type_spec>short</type_spec></sequence> |
<alias>ShortSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>ShortSequence</declarator> |
|
|
</declarators> |
|
289 |
</typedef> |
</typedef> |
290 |
|
|
291 |
<typedef> |
<typedef> |
292 |
<type_spec> |
<sequence>unsigned long</sequence> |
293 |
<sequence><type_spec>unsigned long</type_spec></sequence> |
<alias>UnsignedLongSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>UnsignedLongSequence</declarator> |
|
|
</declarators> |
|
294 |
</typedef> |
</typedef> |
295 |
|
|
296 |
<typedef> |
<typedef> |
297 |
<type_spec> |
<sequence>unsigned short</sequence> |
298 |
<sequence><type_spec>unsigned short</type_spec></sequence> |
<alias>UnsignedShortSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>UnsignedShortSequence</declarator> |
|
|
</declarators> |
|
299 |
</typedef> |
</typedef> |
300 |
|
|
301 |
<typedef> |
<typedef> |
302 |
<type_spec> |
<sequence>char</sequence> |
303 |
<sequence><type_spec>char</type_spec></sequence> |
<alias>CharSeq0uence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>CharSequence</declarator> |
|
|
</declarators> |
|
304 |
</typedef> |
</typedef> |
305 |
|
|
306 |
<typedef> |
<typedef> |
307 |
<type_spec> |
<sequence>boolean</sequence> |
308 |
<sequence><type_spec>boolean</type_spec></sequence> |
<alias>BooleanSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>BooleanSequence</declarator> |
|
|
</declarators> |
|
309 |
</typedef> |
</typedef> |
310 |
|
|
311 |
<typedef> |
<typedef> |
312 |
<type_spec> |
<sequence>octet</sequence> |
313 |
<sequence><type_spec>octet</type_spec></sequence> |
<alias>OctetSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>OctetSequence</declarator> |
|
|
</declarators> |
|
314 |
</typedef> |
</typedef> |
315 |
|
|
316 |
<typedef> |
<typedef> |
317 |
<type_spec> |
<sequence>date</sequence> |
318 |
<sequence><type_spec>date</type_spec></sequence> |
<alias>DateSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>DateSequence</declarator> |
|
|
</declarators> |
|
319 |
</typedef> |
</typedef> |
320 |
|
|
321 |
<typedef> |
<typedef> |
322 |
<type_spec> |
<sequence>time</sequence> |
323 |
<sequence><type_spec>time</type_spec></sequence> |
<alias>TimeSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>TimeSequence</declarator> |
|
|
</declarators> |
|
324 |
</typedef> |
</typedef> |
325 |
|
|
326 |
<typedef> |
<typedef> |
327 |
<type_spec> |
<sequence>interval</sequence> |
328 |
<sequence><type_spec>interval</type_spec></sequence> |
<alias>IntervalSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>IntervalSequence</declarator> |
|
|
</declarators> |
|
329 |
</typedef> |
</typedef> |
330 |
|
|
331 |
<typedef> |
<typedef> |
332 |
<type_spec> |
<sequence>timestamp</sequence> |
333 |
<sequence><type_spec>timestamp</type_spec></sequence> |
<alias>IntervalSequence</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>IntervalSequence</declarator> |
|
|
</declarators> |
|
334 |
</typedef> |
</typedef> |
335 |
|
|
336 |
<typedef> |
<typedef type="string"> |
337 |
<type_spec> |
<alias>String</alias> |
|
<type_spec>string</type_spec> |
|
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>String</declarator> |
|
|
</declarators> |
|
338 |
</typedef> |
</typedef> |
339 |
|
|
340 |
<typedef> |
<typedef> |
341 |
<type_spec> |
<string size="2"/> |
342 |
<type_spec size="2">string</type_spec> |
<alias>StringArray</alias> |
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>StringArray</declarator> |
|
|
</declarators> |
|
343 |
</typedef> |
</typedef> |
344 |
|
|
345 |
<typedef> |
<typedef type="GNUe::Goats::Goat"> |
346 |
<type_spec> |
<alias>Hacker</alias> |
|
<type_spec><scoped_name>GNUe::Goats::Goat</scoped_name></type_spec> |
|
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>Hacker</declarator> |
|
|
</declarators> |
|
347 |
</typedef> |
</typedef> |
348 |
|
|
349 |
<struct id="Foo"> |
<struct name="Foo"> |
350 |
<members> |
<members> |
351 |
<member> |
<member name="fubar">short</member> |
352 |
<type_spec>short</type_spec> |
<member name="foobar">long</member> |
353 |
<declarators> |
<member name="fubarz"> |
354 |
<declarator>fubar</declarator> |
<array>long</array> |
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec>long</type_spec> |
|
|
<declarators> |
|
|
<declarator>foobar</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec><array><type_spec>long</type_spec></array></type_spec> |
|
|
<declarators> |
|
|
<declarator>fubarz</declarator> |
|
|
</declarators> |
|
355 |
</member> |
</member> |
356 |
</members> |
</members> |
357 |
</struct> |
</struct> |
358 |
|
|
359 |
<union id="MyUnion"> |
<union name="MyUnion"> |
360 |
<switch> |
<switch type="long"> |
361 |
<type_spec>long</type_spec> |
<case label="1" name="s">string</case> |
362 |
<case> |
<default name="x">long</default> |
|
<long>1</long> |
|
|
<type_spec>string</type_spec> |
|
|
<declarator>s</declarator> |
|
|
</case> |
|
|
<default> |
|
|
<type_spec>long</type_spec> |
|
|
<declarator>x</declarator> |
|
|
</default> |
|
363 |
</switch> |
</switch> |
364 |
</union> |
</union> |
365 |
|
|
366 |
<enum id="FooType"> |
<enum name="FooType"> |
367 |
<enumerator>bar</enumerator> |
<element>bar</element> |
368 |
<enumerator>biz</enumerator> |
<element>biz</element> |
369 |
<enumerator>bazz</enumerator> |
<element>bazz</element> |
370 |
</enum> |
</enum> |
371 |
|
|
372 |
<typedef> |
<typedef type="Foo"> |
373 |
<type_spec><struct>Foo</struct></type_spec> |
<alias>foo</alias> |
374 |
<declarators> |
</typedef> |
|
<declarator>foo</declarator> |
|
|
</declarators> |
|
|
</typedef> |
|
|
|
|
|
<typedef> |
|
|
<type_spec><union>MyUnion</union></type_spec> |
|
|
<declarators> |
|
|
<declarator>my_union</declarator> |
|
|
</declarators> |
|
|
</typedef> |
|
|
|
|
|
<typedef> |
|
|
<type_spec><enum>FooType</enum></type_spec> |
|
|
<declarators> |
|
|
<declarator>foo_type</declarator> |
|
|
</declarators> |
|
|
</typedef> |
|
|
|
|
|
<typedef> |
|
|
<type_spec> |
|
|
<dictionary> |
|
|
<key> |
|
|
<type_spec>float</type_spec> |
|
|
</key> |
|
|
<value> |
|
|
<type_spec>float</type_spec> |
|
|
</value> |
|
|
</dictionary> |
|
|
</type_spec> |
|
|
<declarators> |
|
|
<declarator>Dictionary</declarator> |
|
|
</declarators> |
|
|
</typedef> |
|
|
|
|
|
<typedef> |
|
|
<type_spec><set><type_spec>float</type_spec></set></type_spec> |
|
|
<declarators> |
|
|
<declarator>Set</declarator> |
|
|
</declarators> |
|
|
</typedef> |
|
|
|
|
|
<typedef> |
|
|
<type_spec><list><type_spec>float</type_spec></list></type_spec> |
|
|
<declarators> |
|
|
<declarator>Set</declarator> |
|
|
</declarators> |
|
|
</typedef> |
|
|
|
|
|
<typedef> |
|
|
<type_spec><bag><type_spec>float</type_spec></bag></type_spec> |
|
|
<declarators> |
|
|
<declarator>Bag</declarator> |
|
|
</declarators> |
|
|
</typedef> |
|
|
|
|
|
<!-- Forward declarations --> |
|
|
<interface id="CodeSlave"/> |
|
|
<class id="Goats::Goat"/> |
|
|
|
|
|
<const id="MADGOATS"> |
|
|
<type_spec> |
|
|
<boolean>TRUE</boolean> |
|
|
</type_spec> |
|
|
</const> |
|
|
|
|
|
<!-- Exception declarations --> |
|
|
<exception id="FooError"/> |
|
|
|
|
|
<exception id="BarError"> |
|
|
<members> |
|
|
<member> |
|
|
<type_spec>string</type_spec> |
|
|
<declarators> |
|
|
<declarator>biz</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec>char</type_spec> |
|
|
<declarators> |
|
|
<declarator>bar</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec>float</type_spec> |
|
|
<declarators> |
|
|
<declarator>baz</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
</members> |
|
|
</exception> |
|
|
|
|
|
<interface id="Sadist"> |
|
|
|
|
|
<operation id="torture"/> |
|
|
|
|
|
</interface> |
|
|
|
|
|
<interface id="Masochist"> |
|
|
<operation id="suffer"/> |
|
|
</interface> |
|
|
|
|
|
<interface id="DaMasta"> |
|
|
<inherits> |
|
|
<interface>Sadist</interface> |
|
|
</inherits> |
|
|
|
|
|
<enum id="BeatingType"> |
|
|
<enumeration>mild</enumeration> |
|
|
<enumeration>profuse</enumeration> |
|
|
</enum> |
|
|
|
|
|
<typedef> |
|
|
<type_spec><enum>BeatingType</enum></type_spec> |
|
|
<declarators> |
|
|
<declarator>beating_t</declarator> |
|
|
</declarators> |
|
|
</typedef> |
|
|
|
|
|
<const id="FAVCOLOR"> |
|
|
<type_spec><string>red</string></type_spec> |
|
|
</const> |
|
|
|
|
|
<exception id="CodeSlaveAway"/> |
|
|
|
|
|
<exception id="NoTicketsAssigned"/> |
|
|
|
|
|
<attribute readonly="1"> |
|
|
<type_spec>string</type_spec> |
|
|
<name>favoriteColor</name> |
|
|
</attribute> |
|
|
|
|
|
<attribute> |
|
|
<type_spec>unsigned short</type_spec> |
|
|
<name>bugReports</name> |
|
|
</attribute> |
|
|
|
|
|
<attribute> |
|
|
<type_spec>beating_t</type_spec> |
|
|
<name>beating</name> |
|
|
</attribute> |
|
|
|
|
|
<relationship id="beats"> |
|
|
<target> |
|
|
<type_spec><set>CodeSlave</set></type_spec> |
|
|
</target> |
|
|
<inverse> |
|
|
<scoped_name>CodeSlave::isBeaten</scoped_name> |
|
|
</inverse> |
|
|
</relationship> |
|
|
|
|
|
<relationship id="assignsTicket"> |
|
|
<target> |
|
|
<type_spec><scoped_name>Hacker</scoped_name></type_spec> |
|
|
</target> |
|
|
<inverse> |
|
|
<scoped_name>Hacker::isAssignedTicketBy</scoped_name> |
|
|
</inverse> |
|
|
</relationship> |
|
|
|
|
|
<operation oneway="1" id="speakInIRCChannel"/> |
|
|
|
|
|
<operation id="isWatching"> |
|
|
<returns> |
|
|
<type_spec>boolean</type_spec> |
|
|
</returns> |
|
|
<parameters> |
|
|
<parameter mode="in"> |
|
|
<type_spec><scoped_name>CodeSlave</scoped_name></type_spec> |
|
|
<declarator>cslave</declarator> |
|
|
</parameter> |
|
|
</parameters> |
|
|
</operation> |
|
|
|
|
|
<operation id="beatCodeSlave"> |
|
|
<parameters> |
|
|
<parameter mode="in"> |
|
|
<type_spec><scoped_name>CodeSlave</scoped_name></type_spec> |
|
|
<declarator>cslave</declarator> |
|
|
</parameter> |
|
|
<parameter mode="inout"> |
|
|
<type_spec>beating_t</type_spec> |
|
|
<declarator>severity</declarator> |
|
|
</parameter> |
|
|
</parameters> |
|
|
<raises> |
|
|
<exception>CodeSlaveAway</exception> |
|
|
</raises> |
|
|
</operation> |
|
|
|
|
|
<operation id="getTickets"> |
|
|
<returns> |
|
|
<type_spec>boolean</type_spec> |
|
|
</returns> |
|
|
<parameters> |
|
|
<parameter mode="in"> |
|
|
<type_spec><scoped_name>Hacker</scoped_name></type_spec> |
|
|
<declarator>goat</declarator> |
|
|
</parameter> |
|
|
<parameter mode="out"> |
|
|
<type_spec>unsigned short</type_spec> |
|
|
<declarator>tickets</declarator> |
|
|
</parameter> |
|
|
</parameters> |
|
|
<raises> |
|
|
<exception>NoTickestAssigned</exception> |
|
|
</raises> |
|
|
</operation> |
|
|
|
|
|
</interface> |
|
|
|
|
|
<interface id="CodeSlave"> |
|
|
<inherits> |
|
|
<interface>Masochist</interface> |
|
|
</inherits> |
|
|
|
|
|
<enum id="HackType"> |
|
|
<enumeration>common</enumeration> |
|
|
<enumeration>forms</enumeration> |
|
|
<enumeration>appserver</enumeration> |
|
|
<enumeration>designer</enumeration> |
|
|
<enumeration>reports</enumeration> |
|
|
<enumeration>navigator</enumeration> |
|
|
<enumeration>phpforms</enumeration> |
|
|
</enum> |
|
|
|
|
|
<typedef> |
|
|
<type_spec><enum>HackType</enum></type_spec> |
|
|
<declarators> |
|
|
<declarator>hack_t</declarator> |
|
|
</declarators> |
|
|
</typedef> |
|
|
|
|
|
<exception id="WhoSaidYouCouldStopCoding"> |
|
|
<members> |
|
|
<member> |
|
|
<type_spec>string</type_spec> |
|
|
<declarators> |
|
|
<declarator>cslave_name</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec>boolean</type_spec> |
|
|
<declarators> |
|
|
<declarator>beating</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
</members> |
|
|
</exception> |
|
|
|
|
|
<exception id="CVSPermissionDenied"> |
|
|
<members> |
|
|
<member> |
|
|
<type_spec>string</type_spec> |
|
|
<declarators> |
|
|
<declarator>why</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
</members> |
|
|
</exception> |
|
|
|
|
|
<relationship id="isBeaten"> |
|
|
<target> |
|
|
<type_spec><scoped_name>GNUe::DaMasta</scoped_name></type_spec> |
|
|
</target> |
|
|
<inverse> |
|
|
<scoped_name>GNUe::DaMasta::beats</scoped_name> |
|
|
</inverse> |
|
|
</relationship> |
|
|
|
|
|
<operation id="stopCoding"> |
|
|
<raises> |
|
|
<exception>WhoSaidYouCouldStopCoding</exception> |
|
|
</raises> |
|
|
</operation> |
|
|
|
|
|
<operation id="commitCode"> |
|
|
<returns> |
|
|
<type_spec>boolean</type_spec> |
|
|
</returns> |
|
|
<parameters> |
|
|
<parameter mode="in"> |
|
|
<type_spec>string</type_spec> |
|
|
<declarator>code</declarator> |
|
|
</parameter> |
|
|
<parameter mode="in"> |
|
|
<type_spec>hack_t</type_spec> |
|
|
<declarator>hackingOn</declarator> |
|
|
</parameter> |
|
|
</parameters> |
|
|
<raises> |
|
|
<exception>CVSPermissionDenied</exception> |
|
|
</raises> |
|
|
</operation> |
|
|
</interface> |
|
|
|
|
|
<!-- |
|
|
This is the fun module :). It is also used to test nesting of |
|
|
modules and as an example to help determine how xml for nesting modules |
|
|
should be done. |
|
|
--> |
|
|
<module id="Goats"> |
|
|
<odl_specification> |
|
|
<odl_definition> |
|
|
|
|
|
<class> |
|
|
<id>Goat</id> |
|
|
<inherits> |
|
|
<interface>GNUe::CodeSlave</interface> |
|
|
</inherits> |
|
|
|
|
|
<attribute> |
|
|
<type_spec>boolean</type_spec> |
|
|
<name>madGoatRaped</name> |
|
|
</attribute> |
|
375 |
|
|
376 |
<attribute> |
<typedef type="MyUnion"> |
377 |
<type_spec>string</type_spec> |
<alias>my_union</alias> |
378 |
<name>name</name> |
</typedef> |
|
</attribute> |
|
379 |
|
|
380 |
<attribute> |
<typedef type="FooType"> |
381 |
<type_spec>boolean</type_spec> |
<alias>foo_type</alias> |
382 |
<name>FSFCopyrightAssignment</name> |
</typedef> |
|
</attribute> |
|
383 |
|
|
384 |
<relationship id="isAssignedTicketBy"> |
<typedef> |
385 |
<target> |
<dictionary> |
386 |
<type_spec><scoped_name>GNUe::DaMasta</scoped_name></type_spec> |
<key>float</key> |
387 |
</target> |
<value>float</value> |
388 |
<inverse> |
</dictionary> |
389 |
<scoped_name>GNUe::DaMasta::assignsTicket</scoped_name> |
<alias>Dictionary</alias> |
390 |
</inverse> |
</typedef> |
|
</relationship> |
|
|
</class> |
|
391 |
|
|
392 |
<class id="Derek"> |
<typedef> |
393 |
<extends> |
<set>float</set> |
394 |
<class>Goat</class> |
<alias>Set</alias> |
395 |
</extends> |
</typedef> |
|
<inherits> |
|
|
<interface>GNUe::DaMasta</interface> |
|
|
</inherits> |
|
|
<extent>goats</extent> |
|
396 |
|
|
397 |
<exception id="BurnRoofOfMouth"/> |
<typedef> |
398 |
|
<list>float</list> |
399 |
|
<alias>List</alias> |
400 |
|
</typedef> |
401 |
|
|
402 |
<exception id="NeedsReheating"/> |
<typedef> |
403 |
|
<bag>float</bag> |
404 |
|
<alias>Bag</alias> |
405 |
|
</typedef> |
406 |
|
|
407 |
<exception id="OutofTopping"> |
<!-- Forward declarations --> |
408 |
<members> |
<interface name="CodeSlave"/> |
409 |
<member> |
<class name="Goats::Goat"/> |
|
<type_spec>string</type_spec> |
|
|
<declarators> |
|
|
<declarator>topping</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
</members> |
|
|
</exception> |
|
410 |
|
|
411 |
<struct id="PizzaType"> |
<const name="MADGOATS" type="boolean">TRUE</const> |
|
<members> |
|
|
<member> |
|
|
<type_spec>string</type_spec> |
|
|
<declarators> |
|
|
<declarator>kind</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec><bag><type_spec>string</type_spec></bag></type_spec> |
|
|
<declarators> |
|
|
<declarator>toppings</declarator> |
|
|
</declarators> |
|
|
<!-- allows duplicate toppings ("extra" toppings) --> |
|
|
</member> |
|
|
</members> |
|
|
</struct> |
|
412 |
|
|
413 |
<typedef> |
<!-- Exception declarations --> |
414 |
<type_spec><struct>PizzaType</struct></type_spec> |
<exception name="FooError"/> |
|
<declarators> |
|
|
<declarator>pizza_t</declarator> |
|
|
</declarators> |
|
|
</typedef> |
|
415 |
|
|
416 |
<attribute> |
<exception name="BarError"> |
417 |
<type_spec>boolean</type_spec> |
<members> |
418 |
<name>orderPizza</name> |
<member name="biz">string</member> |
419 |
</attribute> |
<member name="bar">char</member> |
420 |
|
<member name="baz">float</member> |
421 |
|
</members> |
422 |
|
</exception> |
423 |
|
|
424 |
<attribute> |
<interface name="Sadist"> |
425 |
<type_spec>float</type_spec> |
<operation name="torture"/> |
426 |
<name>temperature</name> |
</interface> |
|
</attribute> |
|
427 |
|
|
428 |
<attribute> |
<interface name="Masochist"> |
429 |
<type_spec><set><type_spec>pizza_t</type_spec></set></type_spec> |
<operation name="suffer"/> |
430 |
<name>pizzas</name> |
</interface> |
|
</attribute> |
|
431 |
|
|
432 |
<operation id="orderPizza"> |
<interface name="DaMasta"> |
433 |
<returns> |
<inherits> |
434 |
<type_spec>boolean</type_spec> |
<interface name="Sadist"/> |
435 |
</returns> |
</inherits> |
|
<parameters> |
|
|
<parameter mode="in"> |
|
|
<type_spec><set>pizza_t</set></type_spec> |
|
|
<declarator>pizzaPies</declarator> |
|
|
</parameter> |
|
|
</parameters> |
|
|
<raises> |
|
|
<exception>OutofTopping</exception> |
|
|
</raises> |
|
|
</operation> |
|
436 |
|
|
437 |
<operation id="eatPizza"> |
<enum name="BeatingType"> |
438 |
<parameters> |
<element>mild</element> |
439 |
<parameter mode="in"> |
<element>profuse</element> |
440 |
<type_spec>pizza_t</type_spec> |
</enum> |
|
<declarator>pizza</declarator> |
|
|
</parameter> |
|
|
</parameters> |
|
|
<raises> |
|
|
<exception>BurnRoofofMouth</exception> |
|
|
<exception>NeedsReheating</exception> |
|
|
</raises> |
|
|
</operation> |
|
|
</class> |
|
441 |
|
|
442 |
<class id="Chillywilly"> |
<typedef type="BeatingType"> |
443 |
<extends> |
<alias>beating_t</alias> |
444 |
<class>Goat</class> |
</typedef> |
|
</extends> |
|
|
<extent>goats</extent> |
|
|
|
|
|
<exception id="OutofStock"> |
|
|
<members> |
|
|
<member> |
|
|
<type_spec>string</type_spec> |
|
|
<declarators> |
|
|
<declarator>why</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
</members> |
|
|
</exception> |
|
445 |
|
|
446 |
<exception id="GoatDucked"/> |
<const name="FAVCOLOR" type="string">red</const> |
447 |
|
|
448 |
<exception id="ExceededTroutLimit"> |
<exception name="CodeSlaveAway"/> |
|
<members> |
|
|
<member> |
|
|
<type_spec>unsigned short</type_spec> |
|
|
<declarators> |
|
|
<declarator>limit</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
</members> |
|
|
</exception> |
|
449 |
|
|
450 |
<enum id="TroutType"> |
<exception name="NoTicketsAssigned"/> |
451 |
<enumeration>brown</enumeration> |
|
452 |
<enumeration>rainbow</enumeration> |
<attribute readonly="1" name="favoriteColor">string</attribute> |
453 |
<enumeration>lake</enumeration> |
|
454 |
|
<attribute name="bugReports">unsigned short</attribute> |
455 |
|
|
456 |
|
<attribute name="beating">beating_t</attribute> |
457 |
|
|
458 |
|
<relationship name="beats"> |
459 |
|
<target> |
460 |
|
<set>CodeSlave</set> |
461 |
|
</target> |
462 |
|
<inverse>CodeSlave::isBeaten</inverse> |
463 |
|
</relationship> |
464 |
|
|
465 |
|
<relationship name="assignsTicket"> |
466 |
|
<target>Hacker</target> |
467 |
|
<inverse>Hacker::isAssignedTicketBy</inverse> |
468 |
|
</relationship> |
469 |
|
|
470 |
|
<operation oneway="1" name="speakInIRCChannel"/> |
471 |
|
|
472 |
|
<operation name="isWatching"> |
473 |
|
<returns>boolean</returns> |
474 |
|
<parameters> |
475 |
|
<parameter mode="in" name="cslave">CodeSlave</parameter> |
476 |
|
</parameters> |
477 |
|
</operation> |
478 |
|
|
479 |
|
<operation name="beatCodeSlave"> |
480 |
|
<parameters> |
481 |
|
<parameter mode="in" name="cslave">CodeSlave</parameter> |
482 |
|
<parameter mode="inout" name="severity">beating_t</parameter> |
483 |
|
</parameters> |
484 |
|
<raises> |
485 |
|
<exception name="CodeSlaveAway"/> |
486 |
|
</raises> |
487 |
|
</operation> |
488 |
|
|
489 |
|
<operation name="getTickets"> |
490 |
|
<returns>boolean</returns> |
491 |
|
<parameters> |
492 |
|
<parameter mode="in" name="goat">Hacker</parameter> |
493 |
|
<parameter mode="out" name="tickets">unsigned short</parameter> |
494 |
|
</parameters> |
495 |
|
<raises> |
496 |
|
<exception name="NoTickestAssigned"/> |
497 |
|
</raises> |
498 |
|
</operation> |
499 |
|
</interface> |
500 |
|
|
501 |
|
<interface name="CodeSlave"> |
502 |
|
<inherits> |
503 |
|
<interface name="Masochist"/> |
504 |
|
</inherits> |
505 |
|
|
506 |
|
<enum name="HackType"> |
507 |
|
<element>common</element> |
508 |
|
<element>forms</element> |
509 |
|
<element>appserver</element> |
510 |
|
<element>designer</element> |
511 |
|
<element>reports</element> |
512 |
|
<element>navigator</element> |
513 |
|
<element>phpforms</element> |
514 |
|
</enum> |
515 |
|
|
516 |
|
<typedef type="HackType"> |
517 |
|
<alias>hack_t</alias> |
518 |
|
</typedef> |
519 |
|
|
520 |
|
<exception name="WhoSaidYouCouldStopCoding"> |
521 |
|
<members> |
522 |
|
<member name="cslave_name">string</member> |
523 |
|
<member name="beating">boolean</member> |
524 |
|
</members> |
525 |
|
</exception> |
526 |
|
|
527 |
|
<exception name="CVSPermissionDenied"> |
528 |
|
<members> |
529 |
|
<member name="why">string</member> |
530 |
|
</members> |
531 |
|
</exception> |
532 |
|
|
533 |
|
<relationship name="isBeaten"> |
534 |
|
<target>GNUe::DaMasta</target> |
535 |
|
<inverse>GNUe::DaMasta::beats</inverse> |
536 |
|
</relationship> |
537 |
|
|
538 |
|
<operation name="stopCoding"> |
539 |
|
<raises> |
540 |
|
<exception name="WhoSaidYouCouldStopCoding"/> |
541 |
|
</raises> |
542 |
|
</operation> |
543 |
|
|
544 |
|
<operation name="commitCode"> |
545 |
|
<returns>boolean</returns> |
546 |
|
<parameters> |
547 |
|
<parameter mode="in" name="code">string</parameter> |
548 |
|
<parameter mode="in" name="hackinOn">hack_t</parameter> |
549 |
|
</parameters> |
550 |
|
<raises> |
551 |
|
<exception name="CVSPermissionDenied"/> |
552 |
|
</raises> |
553 |
|
</operation> |
554 |
|
</interface> |
555 |
|
|
556 |
|
<!-- |
557 |
|
This is the fun module :). It is also used to test nesting of |
558 |
|
modules and as an example to help determine how xml for nesting modules |
559 |
|
should be done. |
560 |
|
--> |
561 |
|
<module name="Goats"> |
562 |
|
<odl_specification> |
563 |
|
<odl_definition> |
564 |
|
|
565 |
|
<class name="Goat"> |
566 |
|
<inherits> |
567 |
|
<interface name="GNUe::CodeSlave"/> |
568 |
|
</inherits> |
569 |
|
|
570 |
|
<attribute name="madGoatRaped">boolean</attribute> |
571 |
|
|
572 |
|
<attribute name="name">string</attribute> |
573 |
|
|
574 |
|
<attribute name="FSFCopyrightAssignment">boolean</attribute> |
575 |
|
|
576 |
|
<relationship name="isAssignedTicketBy"> |
577 |
|
<target>GNUe::DaMasta</target> |
578 |
|
<inverse>GNUe::DaMasta::assignsTicket</inverse> |
579 |
|
</relationship> |
580 |
|
</class> |
581 |
|
|
582 |
|
<class name="Derek"> |
583 |
|
<extends> |
584 |
|
<class name="Goat"/> |
585 |
|
</extends> |
586 |
|
<inherits> |
587 |
|
<interface name="GNUe::DaMasta"/> |
588 |
|
</inherits> |
589 |
|
<extent>goats</extent> |
590 |
|
|
591 |
|
<exception name="BurnRoofOfMouth"/> |
592 |
|
|
593 |
|
<exception name="NeedsReheating"/> |
594 |
|
|
595 |
|
<exception name="OutofTopping"> |
596 |
|
<members> |
597 |
|
<member name="topping">string</member> |
598 |
|
</members> |
599 |
|
</exception> |
600 |
|
|
601 |
|
<struct name="PizzaType"> |
602 |
|
<members> |
603 |
|
<member name="kind">string</member> |
604 |
|
<member name="topping"> |
605 |
|
<bag>string</bag> |
606 |
|
<!-- allows duplicate toppings ("extra" toppings) --> |
607 |
|
</member> |
608 |
|
</members> |
609 |
|
</struct> |
610 |
|
|
611 |
|
<typedef type="PizaType"> |
612 |
|
<alias>pizza_t</alias> |
613 |
|
</typedef> |
614 |
|
|
615 |
|
<attribute name="orderPizza">boolean</attribute> |
616 |
|
|
617 |
|
<attribute name="temperature">float</attribute> |
618 |
|
|
619 |
|
<attribute name="pizzas"> |
620 |
|
<set>pizza_t</set> |
621 |
|
</attribute> |
622 |
|
|
623 |
|
<operation name="orderPizza"> |
624 |
|
<returns>boolean</returns> |
625 |
|
<parameters> |
626 |
|
<parameter mode="in" name="pizzaPies"> |
627 |
|
<set>pizza_t</set> |
628 |
|
</parameter> |
629 |
|
</parameters> |
630 |
|
<raises> |
631 |
|
<exception name="OutofTopping"/> |
632 |
|
</raises> |
633 |
|
</operation> |
634 |
|
|
635 |
|
<operation name="eatPizza"> |
636 |
|
<parameters> |
637 |
|
<parameter mode="in" name="pizza">pizza_t</parameter> |
638 |
|
</parameters> |
639 |
|
<raises> |
640 |
|
<exception name="BurnRoofofMouth"/> |
641 |
|
<exception name="NeedsReheating"/> |
642 |
|
</raises> |
643 |
|
</operation> |
644 |
|
</class> |
645 |
|
|
646 |
|
<class name="Chillywilly"> |
647 |
|
<extends> |
648 |
|
<class name="Goat"/> |
649 |
|
</extends> |
650 |
|
<extent>goats</extent> |
651 |
|
|
652 |
|
<exception name="OutofStock"> |
653 |
|
<members> |
654 |
|
<member name="why">string</member> |
655 |
|
</members> |
656 |
|
</exception> |
657 |
|
|
658 |
|
<exception name="GoatDucked"/> |
659 |
|
|
660 |
|
<exception name="ExceededTroutLimit"> |
661 |
|
<members> |
662 |
|
<member name="limit">unsigned short</member> |
663 |
|
</members> |
664 |
|
</exception> |
665 |
|
|
666 |
|
<enum name="TroutType"> |
667 |
|
<element>brown</element> |
668 |
|
<element>rainbow</element> |
669 |
|
<element>lake</element> |
670 |
</enum> |
</enum> |
671 |
|
|
672 |
<typedef> |
<typedef type="TroutType"> |
673 |
<type_spec><enum>TroutType</enum></type_spec> |
<alias>trout_t</alias> |
|
<declarators> |
|
|
<declarator>trout_t</declarator> |
|
|
</declarators> |
|
674 |
</typedef> |
</typedef> |
675 |
|
|
676 |
<const id="preferredTrout"> |
<const name="preferredTrout" type="trout_t">rainbow</const> |
677 |
<type_spec> |
|
678 |
<trout_t>rainbow</trout_t> |
<attribute name="troutslap">boolean</attribute> |
|
</type_spec> |
|
|
</const> |
|
|
|
|
|
<attribute> |
|
|
<type_spec>boolean</type_spec> |
|
|
<name>troutslap</name> |
|
|
</attribute> |
|
679 |
|
|
680 |
<attribute> |
<attribute name="trout"> |
681 |
<type_spec><bag><type_spec>trout_t</type_spec></bag></type_spec> |
<bag>trout_t</bag> |
|
<name>trout</name> |
|
682 |
</attribute> |
</attribute> |
683 |
|
|
684 |
<relationship id="favoriteSlapee"> |
<relationship name="favoriteSlapee"> |
685 |
<target> |
<target>Jcater</target> |
686 |
<type_spec><scoped_name>Jcater</scoped_name></type_spec> |
<inverse>Jcater::isTroutSlappedBy</inverse> |
|
</target> |
|
|
<inverse> |
|
|
<scoped_name>Jcater::isTroutSlappedBy</scoped_name> |
|
|
</inverse> |
|
687 |
</relationship> |
</relationship> |
688 |
|
|
689 |
<operation id="addTrout"> |
<operation name="addTrout"> |
690 |
<returns> |
<returns>boolean</returns> |
|
<type_spec>boolean</type_spec> |
|
|
</returns> |
|
691 |
<parameters> |
<parameters> |
692 |
<parameter mode="in"> |
<parameter mode="in" name="trout">trout_t</parameter> |
693 |
<type_spec>trout_t</type_spec> |
<parameter mode="out" name="inStock">unsigned short</parameter> |
|
<declarator>trout</declarator> |
|
|
</parameter> |
|
|
<parameter mode="out"> |
|
|
<type_spec>unsigned short</type_spec> |
|
|
<declarator>inStock</declarator> |
|
|
</parameter> |
|
694 |
</parameters> |
</parameters> |
695 |
<raises> |
<raises> |
696 |
<exception>ExceededTroutLimit</exception> |
<exception name="ExceededTroutLimit"/> |
697 |
</raises> |
</raises> |
698 |
</operation> |
</operation> |
699 |
|
|
700 |
<operation id="troutSlap"> |
<operation name="troutSlap"> |
701 |
<parameters> |
<parameters> |
702 |
<parameter mode="in"> |
<parameter mode="in" name="slapee">Goat</parameter> |
703 |
<type_spec><scoped_name>Goat</scoped_name></type_spec> |
<parameter mode="in" name="trout">trout_t</parameter> |
|
<declarator>slapee</declarator> |
|
|
</parameter> |
|
|
<parameter mode="in"> |
|
|
<type_spec>trout_t</type_spec> |
|
|
<declarator>trout</declarator> |
|
|
</parameter> |
|
704 |
</parameters> |
</parameters> |
705 |
<raises> |
<raises> |
706 |
<exception>OutOfStock</exception> |
<exception name="OutOfStock"/> |
707 |
<exception>GoatDucked</exception> |
<exception name="GoatDucked"/> |
708 |
</raises> |
</raises> |
709 |
</operation> |
</operation> |
710 |
</class> |
</class> |
711 |
|
|
712 |
<class id="Jcater"> |
<class name="Jcater"> |
713 |
<extends> |
<extends> |
714 |
<class>Goat</class> |
<class name="Goat"/> |
715 |
</extends> |
</extends> |
716 |
<extent>goats</extent> |
<extent>goats</extent> |
717 |
|
|
718 |
<exception id="InvalidDonutType"> |
<exception name="InvalidDonutType"> |
719 |
<members> |
<members> |
720 |
<member> |
<member name="what">string</member> |
|
<type_spec>string</type_spec> |
|
|
<declarators> |
|
|
<declarator>what</declarator> |
|
|
</declarators> |
|
|
</member> |
|
721 |
</members> |
</members> |
722 |
</exception> |
</exception> |
723 |
|
|
724 |
<exception id="NotEnoughMoney"/> |
<exception name="NotEnoughMoney"/> |
725 |
|
|
726 |
<enum id="DonutType"> |
<enum name="DonutType"> |
727 |
<enumeration>glazed</enumeration> |
<element>glazed</element> |
728 |
<enumeration>krispy_kreme</enumeration> |
<element>krispy_kreme</element> |
729 |
<enumeration>jelly</enumeration> |
<element>jelly</element> |
730 |
<enumeration>powedered</enumeration> |
<element>powedered</element> |
731 |
</enum> |
</enum> |
732 |
|
|
733 |
<struct id="Currency"> |
<struct name="Currency"> |
734 |
<members> |
<members> |
735 |
<member> |
<member name="type">string</member> |
736 |
<type_spec>string</type_spec> |
<member name="amount">float</member> |
|
<declarators> |
|
|
<declarator>type</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec>float</type_spec> |
|
|
<declarators> |
|
|
<declarator>amount</declarator> |
|
|
</declarators> |
|
|
</member> |
|
737 |
</members> |
</members> |
738 |
</struct> |
</struct> |
739 |
|
|
740 |
<typedef> |
<typedef type="DonutType"> |
741 |
<type_spec><struct>DonutType</struct></type_spec> |
<alias>donut_t</alias> |
|
<declarators> |
|
|
<declarator>donut_t</declarator> |
|
|
</declarators> |
|
742 |
</typedef> |
</typedef> |
743 |
|
|
744 |
<const id="preferredDonut"> |
<const name="preferredDonut" type="donut_t">krispy_kreme</const> |
745 |
<type_spec><donut_t>krispy_kreme</donut_t></type_spec> |
|
746 |
</const> |
<attribute name="donuts"> |
747 |
|
<bag>donut_t</bag> |
|
<attribute> |
|
|
<type_spec><bag><type_spec>donut_t</type_spec></bag></type_spec> |
|
|
<name>donuts</name> |
|
748 |
</attribute> |
</attribute> |
749 |
|
|
750 |
<operation id="consumeDonuts"> |
<operation name="consumeDonuts"> |
751 |
<parameters> |
<parameters> |
752 |
<parameter mode="in"> |
<parameter mode="in" name="donut">donut_t</parameter> |
|
<type_spec>donut_t</type_spec> |
|
|
<declarator>donut</declarator> |
|
|
</parameter> |
|
753 |
</parameters> |
</parameters> |
754 |
<raises> |
<raises> |
755 |
<exception>InvalidDonutType</exception> |
<exception name="InvalidDonutType"/> |
756 |
</raises> |
</raises> |
757 |
</operation> |
</operation> |
758 |
|
|
759 |
<operation id="purchaseDonuts"> |
<operation name="purchaseDonuts"> |
760 |
<returns> |
<returns>boolean</returns> |
|
<type_spec>boolean</type_spec> |
|
|
</returns> |
|
761 |
<parameters> |
<parameters> |
762 |
<parameter mode="in"> |
<parameter mode="in" name="money">Currency</parameter> |
763 |
<type_spec><struct>Currency</struct></type_spec> |
<parameter mode="out" name="donuts"> |
764 |
<declarator>money</declarator> |
<bag>donut_t</bag> |
|
</parameter> |
|
|
<parameter mode="out"> |
|
|
<type_spec><bag><type_spec>donut_t</type_spec></bag></type_spec> |
|
|
<declarator>donuts</declarator> |
|
765 |
</parameter> |
</parameter> |
766 |
</parameters> |
</parameters> |
767 |
<raises> |
<raises> |
768 |
<exception>NotEnoughMoney</exception> |
<exception name="NotEnoughMoney"/> |
769 |
</raises> |
</raises> |
770 |
</operation> |
</operation> |
|
|
|
771 |
</class> |
</class> |
772 |
|
|
773 |
<class id="Jamest"> |
<class name="Jamest"> |
774 |
<extends> |
<extends> |
775 |
<class>Goat</class> |
<class name="Goat"/> |
776 |
</extends> |
</extends> |
777 |
<extent>goats</extent> |
<extent>goats</extent> |
778 |
|
|
779 |
<exception id="CrackLevelsTooLow"> |
<exception name="CrackLevelsTooLow"> |
780 |
<members> |
<members> |
781 |
<member> |
<member name="level">unsigned short</member> |
|
<type_spec>unsigned short</type_spec> |
|
|
<declarators> |
|
|
<declarator>level</declarator> |
|
|
</declarators> |
|
|
</member> |
|
782 |
</members> |
</members> |
783 |
</exception> |
</exception> |
784 |
|
|
785 |
<struct id="AtmosphericCrack"> |
<struct name="AtmosphericCrack"> |
786 |
<members> |
<members> |
787 |
<member> |
<member name="kind">string</member> |
788 |
<type_spec>string</type_spec> |
<member name="weight">unsigned long</member> |
789 |
<declarators> |
<member name="percentage">float</member> |
|
<declarator>kind</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec>unsigned long</type_spec> |
|
|
<declarators> |
|
|
<declarator>weight</declarator> |
|
|
</declarators> |
|
|
</member> |
|
|
<member> |
|
|
<type_spec>float</type_spec> |
|
|
<declarators> |
|
|
<declarator>percentage</declarator> |
|
|
</declarators> |
|
|
</member> |
|
790 |
</members> |
</members> |
791 |
</struct> |
</struct> |
792 |
|
|
793 |
<typedef> |
<typedef type="AtmosphericCrack"> |
794 |
<type_spec><struct>AtmosphericCrack</struct></type_spec> |
<alias>atmoscrack_t</alias> |
|
<declarators> |
|
|
<declarator>atmoscrack_t</declarator> |
|
|
</declarators> |
|
795 |
</typedef> |
</typedef> |
796 |
|
|
797 |
<attribute> |
<attribute name="crackReserves"> |
798 |
<type_spec><bag><type_spec>atmoscrack_t</type_spec></bag></type_spec> |
<bag>atmoscrack_t</bag> |
|
<name>crackReserves</name> |
|
799 |
</attribute> |
</attribute> |
800 |
|
|
801 |
<operation id="inhaleAtmosphericCrack"> |
<operation name="inhaleAtmosphericCrack"> |
802 |
<parameters> |
<parameters> |
803 |
<parameter mode="in"> |
<parameter mode="in" name="crack">AtmosphericCrack</parameter> |
|
<type_spec><struct>AtmosphericCrack</struct></type_spec> |
|
|
<declarator>crack</declarator> |
|
|
</parameter> |
|
804 |
</parameters> |
</parameters> |
805 |
<raises> |
<raises> |
806 |
<exception>CrackLevelsTooLow</exception> |
<exception name="CrackLevelsTooLow"/> |
807 |
</raises> |
</raises> |
808 |
</operation> |
</operation> |
809 |
</class> |
</class> |
810 |
|
|
811 |
<class id="Reinhard"> |
<class name="Reinhard"> |
812 |
<extends> |
<extends> |
813 |
<class>Goat</class> |
<class name="Goat"/> |
814 |
</extends> |
</extends> |
815 |
<extent>goats</extent> |
<extent>goats</extent> |
816 |
|
|
817 |
<exception id="FileDoesNotExist"> |
<exception name="FileDoesNotExist"> |
818 |
<members> |
<members> |
819 |
<member> |
<member name="filename">string</member> |
|
<type_spec>string</type_spec> |
|
|
<declarators> |
|
|
<declarator>filename</declarator> |
|
|
</declarators> |
|
|
</member> |
|
820 |
</members> |
</members> |
821 |
</exception> |
</exception> |
822 |
|
|
823 |
<exception id="FileIsEmpty"> |
<exception name="FileIsEmpty"> |
824 |
<members> |
<members> |
825 |
<member> |
<member name="filename">string</member> |
|
<type_spec>string</type_spec> |
|
|
<declarators> |
|
|
<declarator>filename</declarator> |
|
|
</declarators> |
|
|
</member> |
|
826 |
</members> |
</members> |
827 |
</exception> |
</exception> |
828 |
|
|
829 |
<attribute> |
<attribute name="quitMessages"> |
830 |
<type_spec><list><type_spec>string</type_spec></list></type_spec> |
<list>string</list> |
|
<name>quitMessages</name> |
|
831 |
</attribute> |
</attribute> |
832 |
|
|
833 |
<attribute> |
<attribute name="filename">string</attribute> |
|
<type_spec>string</type_spec> |
|
|
<name>filename</name> |
|
|
</attribute> |
|
834 |
|
|
835 |
<operation id="loadQuitMessage"> |
<operation name="loadQuitMessage"> |
836 |
<returns> |
<returns>boolean</returns> |
|
<type_spec>boolean</type_spec> |
|
|
</returns> |
|
837 |
<parameters> |
<parameters> |
838 |
<parameter mode="in"> |
<parameter mode="in" name="filename">string</parameter> |
|
<type_spec>string</type_spec> |
|
|
<declarator>filename</declarator> |
|
|
</parameter> |
|
839 |
</parameters> |
</parameters> |
840 |
<raises> |
<raises> |
841 |
<exception>FileDoesNotExist</exception> |
<exception name="FileDoesNotExist"/> |
842 |
<exception>FileIsEmpty</exception> |
<exception name="FileIsEmpty"/> |
843 |
</raises> |
</raises> |
844 |
</operation> |
</operation> |
845 |
|
|
846 |
<operation id="loadQuitMessage"> |
<operation name="loadQuitMessage"> |
847 |
<returns> |
<returns>string</returns> |
|
<type_spec>string</type_spec> |
|
|
</returns> |
|
848 |
</operation> |
</operation> |
849 |
</class> |
</class> |
850 |
|
|