Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: downloads/boost_1_33_1/tools/boostbook/xsl/caramel/cpp-operators.xml @ 12

Last change on this file since 12 was 12, checked in by landauf, 17 years ago

added boost

File size: 9.6 KB
Line 
1<?xml version="1.0" ?>
2
3<!--
4Copyright (c) 2002-2003 The Trustees of Indiana University.
5                        All rights reserved.
6Copyright (c) 2000-2001 University of Notre Dame. All rights reserved.
7
8The software included in this source file is licensed under the terms and
9conditions of the Software License, version 1.0, in the file LICENSE at the
10top level of the Caramel distribution. -->
11
12<operator-list>
13  <!-- This list is from Pohl's book, and needs to be checked for accuracy -->
14
15  <op name="postincrement">
16    <apply priority="100"><arg num="1"/>++</apply> <!-- No assoc - always use parentheses -->
17    <impl position="method">operator++(int)</impl>
18  </op>
19
20  <op name="postdecrement">
21    <apply priority="100"><arg num="1"/>--</apply>
22    <impl position="method">operator--(int)</impl>
23  </op>
24
25  <op name="apply-function">
26    <apply priority="100"><name/>(<arg-list start="1" priority="30"/>)</apply>
27    <impl position="freestanding"><name/>(<arg-list/>)</impl>
28  </op>
29
30  <op name="apply-method">
31    <apply priority="100" assoc="1"><arg num="1"/>.<name/>(<arg-list start="2" priority="30"/>)</apply>
32    <impl position="method"><name/>(<arg-list/>)</impl>
33  </op>
34
35  <op name="pointer-apply-method">
36    <apply priority="100" assoc="1"><arg num="1"/>-&gt;<name/>(<arg-list start="2" priority="30"/>)</apply>
37    <impl>Error</impl>
38  </op>
39
40  <op name="apply-funcobj">
41    <apply priority="100" assoc="1"><arg num="1"/>(<arg-list start="2" priority="30"/>)</apply>
42    <impl position="method">operator()(<arg-list/>)</impl>
43  </op>
44
45  <op name="construct">
46    <apply priority="100"><arg num="1"/>(<arg-list start="2" priority="30"/>)</apply>
47    <impl position="method"><self/>(<arg-list/>)</impl>
48  </op>
49
50  <op name="subscript">
51    <apply priority="100" assoc="1"><arg num="1"/>[<arg num="2" priority="0"/>]</apply>
52    <impl position="method">operator[](<arg-list/>)</impl>
53  </op>
54
55  <op name="class-member">
56    <apply priority="100" assoc="1"><arg num="1"/>.<name/></apply>
57    <impl>Error</impl>
58  </op>
59
60  <op name="pointer-member">
61    <!-- Note: non-testable constraint -->
62    <apply priority="100"><arg num="1" assoc="1"/>-&gt;{member-name} (return type is pointer-to-object type)</apply>
63    <impl>operator-&gt;(<arg-list/>)</impl>
64  </op>
65
66  <op name="preincrement">
67    <apply priority="95">++<arg num="1"/></apply>
68    <impl position="method">operator++(<arg-list/>)</impl>
69  </op>
70
71  <op name="predecrement">
72    <apply priority="95">--<arg num="1"/></apply>
73    <impl position="method">operator--(<arg-list/>)</impl>
74  </op>
75
76  <op name="logical-not">
77    <apply priority="95" assoc="1">!<arg num="1"/></apply>
78    <impl position="method">operator!(<arg-list/>)</impl>
79  </op>
80
81  <op name="bitwise-not">
82    <apply priority="95" assoc="1">~<arg num="1"/></apply>
83    <impl position="method">operator~(<arg-list/>)</impl>
84  </op>
85
86  <op name="address-of">
87    <apply priority="95">&amp;<arg num="1"/></apply>
88    <impl position="method">operator&amp;(<arg-list/>)</impl>
89  </op>
90
91  <op name="dereference">
92    <apply priority="95" assoc="1">*<arg num="1"/></apply>
93    <impl position="method">operator*(<arg-list/>)</impl>
94  </op>
95
96  <op name="unary-plus">
97    <apply priority="95">+<arg num="1"/></apply>
98    <impl position="method">operator+(<arg-list/>)</impl>
99  </op>
100
101  <op name="unary-minus">
102    <apply priority="95">-<arg num="1"/></apply>
103    <impl position="method">operator-(<arg-list/>)</impl>
104  </op>
105
106  <op name="class-member-ptr">
107    <apply priority="90" assoc="1"><arg num="1"/>.*<arg num="2"/></apply>
108    <impl>Error</impl>
109  </op>
110
111  <op name="pointer-member-ptr">
112    <apply priority="90" assoc="1"><arg num="1"/>-&gt;*<arg num="2"/></apply>
113    <impl position="method">operator-&gt;*(<arg-list/>)</impl>
114  </op>
115
116  <op name="multiply">
117    <apply priority="90" assoc="1"><arg num="1"/> * <arg num="2"/></apply>
118    <impl position="freestanding">operator * (<arg-list/>)</impl>
119  </op>
120
121  <op name="divide">
122    <apply priority="90" assoc="1"><arg num="1"/> / <arg num="2"/></apply>
123    <impl position="freestanding">operator / (<arg-list/>)</impl>
124  </op>
125
126  <op name="modulus">
127    <apply priority="90" assoc="1"><arg num="1"/> % <arg num="2"/></apply>
128    <impl position="freestanding">operator % (<arg-list/>)</impl>
129  </op>
130
131  <op name="add">
132    <apply priority="85" assoc="1"><arg num="1"/> + <arg num="2"/></apply>
133    <impl position="freestanding">operator + (<arg-list/>)</impl>
134  </op>
135
136  <op name="subtract">
137    <apply priority="85" assoc="1"><arg num="1"/> - <arg num="2"/></apply>
138    <impl position="freestanding">operator - (<arg-list/>)</impl>
139  </op>
140
141  <op name="shift-left">
142    <apply priority="80" assoc="1"><arg num="1"/> &lt;&lt; <arg num="2"/></apply>
143    <impl position="freestanding">operator &lt;&lt; (<arg-list/>)</impl>
144  </op>
145
146  <op name="shift-right">
147    <apply priority="80" assoc="1"><arg num="1"/> &gt;&gt; <arg num="2"/></apply>
148    <impl position="freestanding">operator &gt;&gt; (<arg-list/>)</impl>
149  </op>
150
151  <op name="less-than">
152    <apply priority="75"><arg num="1"/> &lt; <arg num="2"/></apply>
153    <impl position="freestanding">operator &lt; (<arg-list/>)</impl>
154  </op>
155
156  <op name="greater-than">
157    <apply priority="75"><arg num="1"/> &gt; <arg num="2"/></apply>
158    <impl position="freestanding">operator &gt; (<arg-list/>)</impl>
159  </op>
160
161  <op name="less-than-or-equal">
162    <apply priority="75"><arg num="1"/> &lt;= <arg num="2"/></apply>
163    <impl position="freestanding">operator &lt;= (<arg-list/>)</impl>
164  </op>
165
166  <op name="greater-than-or-equal">
167    <apply priority="75"><arg num="1"/> &gt;= <arg num="2"/></apply>
168    <impl position="freestanding">operator &gt;= (<arg-list/>)</impl>
169  </op>
170
171  <op name="equal-to">
172    <apply priority="70"><arg num="1"/> == <arg num="2"/></apply>
173    <impl position="freestanding">operator == (<arg-list/>)</impl>
174  </op>
175
176  <op name="not-equal-to">
177    <apply priority="70"><arg num="1"/> != <arg num="2"/></apply>
178    <impl position="freestanding">operator != (<arg-list/>)</impl>
179  </op>
180
181  <op name="bitwise-and">
182    <apply priority="65" assoc="1"><arg num="1"/> &amp; <arg num="2"/></apply>
183    <impl position="freestanding">operator &amp; (<arg-list/>)</impl>
184  </op>
185
186  <op name="bitwise-or">
187    <apply priority="60" assoc="1"><arg num="1"/> | <arg num="2"/></apply>
188    <impl position="freestanding">operator | (<arg-list/>)</impl>
189  </op>
190
191  <op name="bitwise-xor">
192    <apply priority="55" assoc="1"><arg num="1"/> ^ <arg num="2"/></apply>
193    <impl position="freestanding">operator ^ (<arg-list/>)</impl>
194  </op>
195
196  <op name="logical-and">
197    <apply priority="50" assoc="1"><arg num="1"/> &amp;&amp; <arg num="2"/></apply>
198    <impl position="freestanding">operator &amp;&amp; (<arg-list/>)</impl>
199  </op>
200
201  <op name="logical-or">
202    <apply priority="45" assoc="1"><arg num="1"/> || <arg num="2"/></apply>
203    <impl position="freestanding">operator || (<arg-list/>)</impl>
204  </op>
205
206  <op name="conditional">
207    <apply priority="40" assoc="3"><arg num="1"/> ? <arg num="2"/> : <arg num="3"/></apply>
208    <impl>Error</impl>
209  </op>
210
211  <op name="assign">
212    <apply priority="35" assoc="2"><arg num="1"/> = <arg num="2"/></apply>
213    <impl position="method">operator = (<arg-list/>)</impl>
214  </op>
215
216  <op name="add-assign">
217    <apply priority="35" assoc="2"><arg num="1"/> += <arg num="2"/></apply>
218    <impl position="method">operator += (<arg-list/>)</impl>
219  </op>
220
221  <op name="subtract-assign">
222    <apply priority="35" assoc="2"><arg num="1"/> -= <arg num="2"/></apply>
223    <impl position="method">operator -= (<arg-list/>)</impl>
224  </op>
225
226  <op name="multiply-assign">
227    <apply priority="35" assoc="2"><arg num="1"/> *= <arg num="2"/></apply>
228    <impl position="method">operator *= (<arg-list/>)</impl>
229  </op>
230
231  <op name="divide-assign">
232    <apply priority="35" assoc="2"><arg num="1"/> /= <arg num="2"/></apply>
233    <impl position="method">operator /= (<arg-list/>)</impl>
234  </op>
235
236  <op name="modulus-assign">
237    <apply priority="35" assoc="2"><arg num="1"/> %= <arg num="2"/></apply>
238    <impl position="method">operator %= (<arg-list/>)</impl>
239  </op>
240
241  <op name="shift-left-assign">
242    <apply priority="35" assoc="2"><arg num="1"/> &lt;&lt;= <arg num="2"/></apply>
243    <impl position="method">operator &lt;&lt;= (<arg-list/>)</impl>
244  </op>
245
246  <op name="shift-right-assign">
247    <apply priority="35" assoc="2"><arg num="1"/> &gt;&gt;= <arg num="2"/></apply>
248    <impl position="method">operator &gt;&gt;= (<arg-list/>)</impl>
249  </op>
250
251  <op name="bitwise-and-assign">
252    <apply priority="35" assoc="2"><arg num="1"/> &amp;= <arg num="2"/></apply>
253    <impl position="method">operator &amp;= (<arg-list/>)</impl>
254  </op>
255
256  <op name="bitwise-or-assign">
257    <apply priority="35" assoc="2"><arg num="1"/> |= <arg num="2"/></apply>
258    <impl position="method">operator |= (<arg-list/>)</impl>
259  </op>
260
261  <op name="bitwise-xor-assign">
262    <apply priority="35" assoc="2"><arg num="1"/> ^= <arg num="2"/></apply>
263    <impl position="method">operator ^= (<arg-list/>)</impl>
264  </op>
265
266  <op name="comma">
267    <apply priority="20"><arg num="1"/>, <arg num="2"/></apply>
268    <impl position="freestanding">operator , (<arg-list/>)</impl>
269  </op>
270
271  <op name="function-pointer">
272    <apply><arg num="1"/> (*)(<arg-list start="2" priority="30"/>)</apply>
273    <impl>Error</impl>
274  </op>
275
276  <op name="functorize-operator">
277    <!-- Note: non-testable constraint -->
278    <apply>functorization of operator <name/> on arguments {<arg-list start="1"/>}</apply>
279    <impl>Error</impl>
280  </op>
281
282  <op name="functorize-function">
283    <!-- Note: non-testable constraint -->
284    <apply>functorization of function <name/> on arguments {<arg-list start="1"/>}</apply>
285    <impl>Error</impl>
286  </op>
287
288</operator-list>
Note: See TracBrowser for help on using the repository browser.