1 # /* Copyright (C) 2001 |
1 |
2 # * Housemarque Oy |
2 #ifndef BOOST_MPL_BOOL_HPP_INCLUDED |
3 # * http://www.housemarque.com |
3 #define BOOST_MPL_BOOL_HPP_INCLUDED |
4 # * |
4 |
5 # * Distributed under the Boost Software License, Version 1.0. (See |
5 // Copyright Aleksey Gurtovoy 2000-2004 |
6 # * accompanying file LICENSE_1_0.txt or copy at |
6 // |
7 # * http://www.boost.org/LICENSE_1_0.txt) |
7 // Distributed under the Boost Software License, Version 1.0. |
8 # */ |
8 // (See accompanying file LICENSE_1_0.txt or copy at |
9 # |
9 // http://www.boost.org/LICENSE_1_0.txt) |
10 # /* Revised by Paul Mensonides (2002) */ |
10 // |
11 # |
11 // See http://www.boost.org/libs/mpl for documentation. |
12 # /* See http://www.boost.org for most recent version. */ |
12 |
13 # |
13 // $Source: /cvsroot/boost/boost/boost/mpl/bool.hpp,v $ |
14 # ifndef BOOST_PREPROCESSOR_LOGICAL_BOOL_HPP |
14 // $Date: 2004/09/26 09:54:25 $ |
15 # define BOOST_PREPROCESSOR_LOGICAL_BOOL_HPP |
15 // $Revision: 1.6 $ |
16 # |
16 |
17 # include <boost/preprocessor/config/config.hpp> |
17 #include <boost/mpl/bool_fwd.hpp> |
18 # |
18 #include <boost/mpl/integral_c_tag.hpp> |
19 # /* BOOST_PP_BOOL */ |
19 #include <boost/mpl/aux_/config/static_constant.hpp> |
20 # |
20 |
21 # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() |
21 BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN |
22 # define BOOST_PP_BOOL(x) BOOST_PP_BOOL_I(x) |
22 |
23 # else |
23 template< bool C_ > struct bool_ |
24 # define BOOST_PP_BOOL(x) BOOST_PP_BOOL_OO((x)) |
24 { |
25 # define BOOST_PP_BOOL_OO(par) BOOST_PP_BOOL_I ## par |
25 BOOST_STATIC_CONSTANT(bool, value = C_); |
26 # endif |
26 typedef integral_c_tag tag; |
27 # |
27 typedef bool_ type; |
28 # define BOOST_PP_BOOL_I(x) BOOST_PP_BOOL_ ## x |
28 typedef bool value_type; |
29 # |
29 operator bool() const { return this->value; } |
30 # define BOOST_PP_BOOL_0 0 |
30 }; |
31 # define BOOST_PP_BOOL_1 1 |
31 |
32 # define BOOST_PP_BOOL_2 1 |
32 #if !defined(BOOST_NO_INCLASS_MEMBER_INITIALIZATION) |
33 # define BOOST_PP_BOOL_3 1 |
33 template< bool C_ > |
34 # define BOOST_PP_BOOL_4 1 |
34 bool const bool_<C_>::value; |
35 # define BOOST_PP_BOOL_5 1 |
35 #endif |
36 # define BOOST_PP_BOOL_6 1 |
36 |
37 # define BOOST_PP_BOOL_7 1 |
37 BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE |
38 # define BOOST_PP_BOOL_8 1 |
38 |
39 # define BOOST_PP_BOOL_9 1 |
39 #endif // BOOST_MPL_BOOL_HPP_INCLUDED |
40 # define BOOST_PP_BOOL_10 1 |
|
41 # define BOOST_PP_BOOL_11 1 |
|
42 # define BOOST_PP_BOOL_12 1 |
|
43 # define BOOST_PP_BOOL_13 1 |
|
44 # define BOOST_PP_BOOL_14 1 |
|
45 # define BOOST_PP_BOOL_15 1 |
|
46 # define BOOST_PP_BOOL_16 1 |
|
47 # define BOOST_PP_BOOL_17 1 |
|
48 # define BOOST_PP_BOOL_18 1 |
|
49 # define BOOST_PP_BOOL_19 1 |
|
50 # define BOOST_PP_BOOL_20 1 |
|
51 # define BOOST_PP_BOOL_21 1 |
|
52 # define BOOST_PP_BOOL_22 1 |
|
53 # define BOOST_PP_BOOL_23 1 |
|
54 # define BOOST_PP_BOOL_24 1 |
|
55 # define BOOST_PP_BOOL_25 1 |
|
56 # define BOOST_PP_BOOL_26 1 |
|
57 # define BOOST_PP_BOOL_27 1 |
|
58 # define BOOST_PP_BOOL_28 1 |
|
59 # define BOOST_PP_BOOL_29 1 |
|
60 # define BOOST_PP_BOOL_30 1 |
|
61 # define BOOST_PP_BOOL_31 1 |
|
62 # define BOOST_PP_BOOL_32 1 |
|
63 # define BOOST_PP_BOOL_33 1 |
|
64 # define BOOST_PP_BOOL_34 1 |
|
65 # define BOOST_PP_BOOL_35 1 |
|
66 # define BOOST_PP_BOOL_36 1 |
|
67 # define BOOST_PP_BOOL_37 1 |
|
68 # define BOOST_PP_BOOL_38 1 |
|
69 # define BOOST_PP_BOOL_39 1 |
|
70 # define BOOST_PP_BOOL_40 1 |
|
71 # define BOOST_PP_BOOL_41 1 |
|
72 # define BOOST_PP_BOOL_42 1 |
|
73 # define BOOST_PP_BOOL_43 1 |
|
74 # define BOOST_PP_BOOL_44 1 |
|
75 # define BOOST_PP_BOOL_45 1 |
|
76 # define BOOST_PP_BOOL_46 1 |
|
77 # define BOOST_PP_BOOL_47 1 |
|
78 # define BOOST_PP_BOOL_48 1 |
|
79 # define BOOST_PP_BOOL_49 1 |
|
80 # define BOOST_PP_BOOL_50 1 |
|
81 # define BOOST_PP_BOOL_51 1 |
|
82 # define BOOST_PP_BOOL_52 1 |
|
83 # define BOOST_PP_BOOL_53 1 |
|
84 # define BOOST_PP_BOOL_54 1 |
|
85 # define BOOST_PP_BOOL_55 1 |
|
86 # define BOOST_PP_BOOL_56 1 |
|
87 # define BOOST_PP_BOOL_57 1 |
|
88 # define BOOST_PP_BOOL_58 1 |
|
89 # define BOOST_PP_BOOL_59 1 |
|
90 # define BOOST_PP_BOOL_60 1 |
|
91 # define BOOST_PP_BOOL_61 1 |
|
92 # define BOOST_PP_BOOL_62 1 |
|
93 # define BOOST_PP_BOOL_63 1 |
|
94 # define BOOST_PP_BOOL_64 1 |
|
95 # define BOOST_PP_BOOL_65 1 |
|
96 # define BOOST_PP_BOOL_66 1 |
|
97 # define BOOST_PP_BOOL_67 1 |
|
98 # define BOOST_PP_BOOL_68 1 |
|
99 # define BOOST_PP_BOOL_69 1 |
|
100 # define BOOST_PP_BOOL_70 1 |
|
101 # define BOOST_PP_BOOL_71 1 |
|
102 # define BOOST_PP_BOOL_72 1 |
|
103 # define BOOST_PP_BOOL_73 1 |
|
104 # define BOOST_PP_BOOL_74 1 |
|
105 # define BOOST_PP_BOOL_75 1 |
|
106 # define BOOST_PP_BOOL_76 1 |
|
107 # define BOOST_PP_BOOL_77 1 |
|
108 # define BOOST_PP_BOOL_78 1 |
|
109 # define BOOST_PP_BOOL_79 1 |
|
110 # define BOOST_PP_BOOL_80 1 |
|
111 # define BOOST_PP_BOOL_81 1 |
|
112 # define BOOST_PP_BOOL_82 1 |
|
113 # define BOOST_PP_BOOL_83 1 |
|
114 # define BOOST_PP_BOOL_84 1 |
|
115 # define BOOST_PP_BOOL_85 1 |
|
116 # define BOOST_PP_BOOL_86 1 |
|
117 # define BOOST_PP_BOOL_87 1 |
|
118 # define BOOST_PP_BOOL_88 1 |
|
119 # define BOOST_PP_BOOL_89 1 |
|
120 # define BOOST_PP_BOOL_90 1 |
|
121 # define BOOST_PP_BOOL_91 1 |
|
122 # define BOOST_PP_BOOL_92 1 |
|
123 # define BOOST_PP_BOOL_93 1 |
|
124 # define BOOST_PP_BOOL_94 1 |
|
125 # define BOOST_PP_BOOL_95 1 |
|
126 # define BOOST_PP_BOOL_96 1 |
|
127 # define BOOST_PP_BOOL_97 1 |
|
128 # define BOOST_PP_BOOL_98 1 |
|
129 # define BOOST_PP_BOOL_99 1 |
|
130 # define BOOST_PP_BOOL_100 1 |
|
131 # define BOOST_PP_BOOL_101 1 |
|
132 # define BOOST_PP_BOOL_102 1 |
|
133 # define BOOST_PP_BOOL_103 1 |
|
134 # define BOOST_PP_BOOL_104 1 |
|
135 # define BOOST_PP_BOOL_105 1 |
|
136 # define BOOST_PP_BOOL_106 1 |
|
137 # define BOOST_PP_BOOL_107 1 |
|
138 # define BOOST_PP_BOOL_108 1 |
|
139 # define BOOST_PP_BOOL_109 1 |
|
140 # define BOOST_PP_BOOL_110 1 |
|
141 # define BOOST_PP_BOOL_111 1 |
|
142 # define BOOST_PP_BOOL_112 1 |
|
143 # define BOOST_PP_BOOL_113 1 |
|
144 # define BOOST_PP_BOOL_114 1 |
|
145 # define BOOST_PP_BOOL_115 1 |
|
146 # define BOOST_PP_BOOL_116 1 |
|
147 # define BOOST_PP_BOOL_117 1 |
|
148 # define BOOST_PP_BOOL_118 1 |
|
149 # define BOOST_PP_BOOL_119 1 |
|
150 # define BOOST_PP_BOOL_120 1 |
|
151 # define BOOST_PP_BOOL_121 1 |
|
152 # define BOOST_PP_BOOL_122 1 |
|
153 # define BOOST_PP_BOOL_123 1 |
|
154 # define BOOST_PP_BOOL_124 1 |
|
155 # define BOOST_PP_BOOL_125 1 |
|
156 # define BOOST_PP_BOOL_126 1 |
|
157 # define BOOST_PP_BOOL_127 1 |
|
158 # define BOOST_PP_BOOL_128 1 |
|
159 # define BOOST_PP_BOOL_129 1 |
|
160 # define BOOST_PP_BOOL_130 1 |
|
161 # define BOOST_PP_BOOL_131 1 |
|
162 # define BOOST_PP_BOOL_132 1 |
|
163 # define BOOST_PP_BOOL_133 1 |
|
164 # define BOOST_PP_BOOL_134 1 |
|
165 # define BOOST_PP_BOOL_135 1 |
|
166 # define BOOST_PP_BOOL_136 1 |
|
167 # define BOOST_PP_BOOL_137 1 |
|
168 # define BOOST_PP_BOOL_138 1 |
|
169 # define BOOST_PP_BOOL_139 1 |
|
170 # define BOOST_PP_BOOL_140 1 |
|
171 # define BOOST_PP_BOOL_141 1 |
|
172 # define BOOST_PP_BOOL_142 1 |
|
173 # define BOOST_PP_BOOL_143 1 |
|
174 # define BOOST_PP_BOOL_144 1 |
|
175 # define BOOST_PP_BOOL_145 1 |
|
176 # define BOOST_PP_BOOL_146 1 |
|
177 # define BOOST_PP_BOOL_147 1 |
|
178 # define BOOST_PP_BOOL_148 1 |
|
179 # define BOOST_PP_BOOL_149 1 |
|
180 # define BOOST_PP_BOOL_150 1 |
|
181 # define BOOST_PP_BOOL_151 1 |
|
182 # define BOOST_PP_BOOL_152 1 |
|
183 # define BOOST_PP_BOOL_153 1 |
|
184 # define BOOST_PP_BOOL_154 1 |
|
185 # define BOOST_PP_BOOL_155 1 |
|
186 # define BOOST_PP_BOOL_156 1 |
|
187 # define BOOST_PP_BOOL_157 1 |
|
188 # define BOOST_PP_BOOL_158 1 |
|
189 # define BOOST_PP_BOOL_159 1 |
|
190 # define BOOST_PP_BOOL_160 1 |
|
191 # define BOOST_PP_BOOL_161 1 |
|
192 # define BOOST_PP_BOOL_162 1 |
|
193 # define BOOST_PP_BOOL_163 1 |
|
194 # define BOOST_PP_BOOL_164 1 |
|
195 # define BOOST_PP_BOOL_165 1 |
|
196 # define BOOST_PP_BOOL_166 1 |
|
197 # define BOOST_PP_BOOL_167 1 |
|
198 # define BOOST_PP_BOOL_168 1 |
|
199 # define BOOST_PP_BOOL_169 1 |
|
200 # define BOOST_PP_BOOL_170 1 |
|
201 # define BOOST_PP_BOOL_171 1 |
|
202 # define BOOST_PP_BOOL_172 1 |
|
203 # define BOOST_PP_BOOL_173 1 |
|
204 # define BOOST_PP_BOOL_174 1 |
|
205 # define BOOST_PP_BOOL_175 1 |
|
206 # define BOOST_PP_BOOL_176 1 |
|
207 # define BOOST_PP_BOOL_177 1 |
|
208 # define BOOST_PP_BOOL_178 1 |
|
209 # define BOOST_PP_BOOL_179 1 |
|
210 # define BOOST_PP_BOOL_180 1 |
|
211 # define BOOST_PP_BOOL_181 1 |
|
212 # define BOOST_PP_BOOL_182 1 |
|
213 # define BOOST_PP_BOOL_183 1 |
|
214 # define BOOST_PP_BOOL_184 1 |
|
215 # define BOOST_PP_BOOL_185 1 |
|
216 # define BOOST_PP_BOOL_186 1 |
|
217 # define BOOST_PP_BOOL_187 1 |
|
218 # define BOOST_PP_BOOL_188 1 |
|
219 # define BOOST_PP_BOOL_189 1 |
|
220 # define BOOST_PP_BOOL_190 1 |
|
221 # define BOOST_PP_BOOL_191 1 |
|
222 # define BOOST_PP_BOOL_192 1 |
|
223 # define BOOST_PP_BOOL_193 1 |
|
224 # define BOOST_PP_BOOL_194 1 |
|
225 # define BOOST_PP_BOOL_195 1 |
|
226 # define BOOST_PP_BOOL_196 1 |
|
227 # define BOOST_PP_BOOL_197 1 |
|
228 # define BOOST_PP_BOOL_198 1 |
|
229 # define BOOST_PP_BOOL_199 1 |
|
230 # define BOOST_PP_BOOL_200 1 |
|
231 # define BOOST_PP_BOOL_201 1 |
|
232 # define BOOST_PP_BOOL_202 1 |
|
233 # define BOOST_PP_BOOL_203 1 |
|
234 # define BOOST_PP_BOOL_204 1 |
|
235 # define BOOST_PP_BOOL_205 1 |
|
236 # define BOOST_PP_BOOL_206 1 |
|
237 # define BOOST_PP_BOOL_207 1 |
|
238 # define BOOST_PP_BOOL_208 1 |
|
239 # define BOOST_PP_BOOL_209 1 |
|
240 # define BOOST_PP_BOOL_210 1 |
|
241 # define BOOST_PP_BOOL_211 1 |
|
242 # define BOOST_PP_BOOL_212 1 |
|
243 # define BOOST_PP_BOOL_213 1 |
|
244 # define BOOST_PP_BOOL_214 1 |
|
245 # define BOOST_PP_BOOL_215 1 |
|
246 # define BOOST_PP_BOOL_216 1 |
|
247 # define BOOST_PP_BOOL_217 1 |
|
248 # define BOOST_PP_BOOL_218 1 |
|
249 # define BOOST_PP_BOOL_219 1 |
|
250 # define BOOST_PP_BOOL_220 1 |
|
251 # define BOOST_PP_BOOL_221 1 |
|
252 # define BOOST_PP_BOOL_222 1 |
|
253 # define BOOST_PP_BOOL_223 1 |
|
254 # define BOOST_PP_BOOL_224 1 |
|
255 # define BOOST_PP_BOOL_225 1 |
|
256 # define BOOST_PP_BOOL_226 1 |
|
257 # define BOOST_PP_BOOL_227 1 |
|
258 # define BOOST_PP_BOOL_228 1 |
|
259 # define BOOST_PP_BOOL_229 1 |
|
260 # define BOOST_PP_BOOL_230 1 |
|
261 # define BOOST_PP_BOOL_231 1 |
|
262 # define BOOST_PP_BOOL_232 1 |
|
263 # define BOOST_PP_BOOL_233 1 |
|
264 # define BOOST_PP_BOOL_234 1 |
|
265 # define BOOST_PP_BOOL_235 1 |
|
266 # define BOOST_PP_BOOL_236 1 |
|
267 # define BOOST_PP_BOOL_237 1 |
|
268 # define BOOST_PP_BOOL_238 1 |
|
269 # define BOOST_PP_BOOL_239 1 |
|
270 # define BOOST_PP_BOOL_240 1 |
|
271 # define BOOST_PP_BOOL_241 1 |
|
272 # define BOOST_PP_BOOL_242 1 |
|
273 # define BOOST_PP_BOOL_243 1 |
|
274 # define BOOST_PP_BOOL_244 1 |
|
275 # define BOOST_PP_BOOL_245 1 |
|
276 # define BOOST_PP_BOOL_246 1 |
|
277 # define BOOST_PP_BOOL_247 1 |
|
278 # define BOOST_PP_BOOL_248 1 |
|
279 # define BOOST_PP_BOOL_249 1 |
|
280 # define BOOST_PP_BOOL_250 1 |
|
281 # define BOOST_PP_BOOL_251 1 |
|
282 # define BOOST_PP_BOOL_252 1 |
|
283 # define BOOST_PP_BOOL_253 1 |
|
284 # define BOOST_PP_BOOL_254 1 |
|
285 # define BOOST_PP_BOOL_255 1 |
|
286 # define BOOST_PP_BOOL_256 1 |
|
287 # |
|
288 # endif |
|