32 #if !defined(BOOST_PP_IS_ITERATING)
34 #ifndef BOOST_TT_REMOVE_MEMBER_POINTER_HPP_INCLUDED
35 #define BOOST_TT_REMOVE_MEMBER_POINTER_HPP_INCLUDED
37 #if defined(BOOST_TT_PREPROCESSING_MODE)
38 # include <boost/preprocessor/iterate.hpp>
39 # include <boost/preprocessor/enum_params.hpp>
40 # include <boost/preprocessor/comma_if.hpp>
43 #include <boost/config.hpp>
44 #include <boost/detail/workaround.hpp>
47 #include <boost/type_traits/detail/type_trait_def.hpp>
51 #if !defined(BOOST_TT_PREPROCESSING_MODE)
54 struct rem_mem_pointer_impl{
typedef T type; };
55 template <
class R,
class T >
56 struct rem_mem_pointer_impl<R (T::*)> {
typedef R type; };
57 template <
class R,
class T >
58 struct rem_mem_pointer_impl<R (T::* const)> {
typedef R type; };
59 template <
class R,
class T >
60 struct rem_mem_pointer_impl<R (T::* volatile)> {
typedef R type; };
61 template <
class R,
class T >
62 struct rem_mem_pointer_impl<R (T::* const volatile)> {
typedef R type; };
66 template <
class R,
class T >
67 struct rem_mem_pointer_impl<R (T::*)() > {
typedef R type(); };
68 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
69 template <
class R,
class T >
70 struct rem_mem_pointer_impl<R (T::*)( ...) > {
typedef R type( ...); };
73 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
74 template <
class R,
class T >
75 struct rem_mem_pointer_impl<R (T::*)() const > {
typedef R type(); };
77 template <
class R,
class T >
78 struct rem_mem_pointer_impl<R (T::*)() volatile > {
typedef R type(); };
80 template <
class R,
class T >
81 struct rem_mem_pointer_impl<R (T::*)() const volatile > {
typedef R type(); };
83 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
84 template <
class R,
class T >
85 struct rem_mem_pointer_impl<R (T::*)( ...) const > {
typedef R type( ...); };
87 template <
class R,
class T >
88 struct rem_mem_pointer_impl<R (T::*)( ...) volatile > {
typedef R type( ...); };
90 template <
class R,
class T >
91 struct rem_mem_pointer_impl<R (T::*)( ...) const volatile > {
typedef R type( ...); };
95 template <
class R,
class T >
96 struct rem_mem_pointer_impl<R (T::*const)() > {
typedef R type(); };
97 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
98 template <
class R,
class T >
99 struct rem_mem_pointer_impl<R (T::*const)( ...) > {
typedef R type( ...); };
102 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
103 template <
class R,
class T >
104 struct rem_mem_pointer_impl<R (T::*const)() const > {
typedef R type(); };
106 template <
class R,
class T >
107 struct rem_mem_pointer_impl<R (T::*const)() volatile > {
typedef R type(); };
109 template <
class R,
class T >
110 struct rem_mem_pointer_impl<R (T::*const)() const volatile > {
typedef R type(); };
112 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
113 template <
class R,
class T >
114 struct rem_mem_pointer_impl<R (T::*const)( ...) const > {
typedef R type( ...); };
116 template <
class R,
class T >
117 struct rem_mem_pointer_impl<R (T::*const)( ...) volatile > {
typedef R type( ...); };
119 template <
class R,
class T >
120 struct rem_mem_pointer_impl<R (T::*const)( ...) const volatile > {
typedef R type( ...); };
124 template <
class R,
class T >
125 struct rem_mem_pointer_impl<R (T::*const volatile)() > {
typedef R type(); };
126 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
127 template <
class R,
class T >
128 struct rem_mem_pointer_impl<R (T::*const volatile)( ...) > {
typedef R type( ...); };
131 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
132 template <
class R,
class T >
133 struct rem_mem_pointer_impl<R (T::*const volatile)() const > {
typedef R type(); };
135 template <
class R,
class T >
136 struct rem_mem_pointer_impl<R (T::*const volatile)() volatile > {
typedef R type(); };
138 template <
class R,
class T >
139 struct rem_mem_pointer_impl<R (T::*const volatile)() const volatile > {
typedef R type(); };
141 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
142 template <
class R,
class T >
143 struct rem_mem_pointer_impl<R (T::*const volatile)( ...) const > {
typedef R type( ...); };
145 template <
class R,
class T >
146 struct rem_mem_pointer_impl<R (T::*const volatile)( ...) volatile > {
typedef R type( ...); };
148 template <
class R,
class T >
149 struct rem_mem_pointer_impl<R (T::*const volatile)( ...) const volatile > {
typedef R type( ...); };
153 template <
class R,
class T >
154 struct rem_mem_pointer_impl<R (T::*volatile)() > {
typedef R type(); };
155 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
156 template <
class R,
class T >
157 struct rem_mem_pointer_impl<R (T::*volatile)( ...) > {
typedef R type( ...); };
160 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
161 template <
class R,
class T >
162 struct rem_mem_pointer_impl<R (T::*volatile)() const > {
typedef R type(); };
164 template <
class R,
class T >
165 struct rem_mem_pointer_impl<R (T::*volatile)() volatile > {
typedef R type(); };
167 template <
class R,
class T >
168 struct rem_mem_pointer_impl<R (T::*volatile)() const volatile > {
typedef R type(); };
170 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
171 template <
class R,
class T >
172 struct rem_mem_pointer_impl<R (T::*volatile)( ...) const > {
typedef R type( ...); };
174 template <
class R,
class T >
175 struct rem_mem_pointer_impl<R (T::*volatile)( ...) volatile > {
typedef R type( ...); };
177 template <
class R,
class T >
178 struct rem_mem_pointer_impl<R (T::*volatile)( ...) const volatile > {
typedef R type( ...); };
181 template <
class R,
class T ,
class T0>
182 struct rem_mem_pointer_impl<R (T::*)( T0) > {
typedef R type( T0); };
183 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
184 template <
class R,
class T ,
class T0>
185 struct rem_mem_pointer_impl<R (T::*)( T0 ...) > {
typedef R type( T0 ...); };
188 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
189 template <
class R,
class T ,
class T0>
190 struct rem_mem_pointer_impl<R (T::*)( T0) const > {
typedef R type( T0); };
192 template <
class R,
class T ,
class T0>
193 struct rem_mem_pointer_impl<R (T::*)( T0) volatile > {
typedef R type( T0); };
195 template <
class R,
class T ,
class T0>
196 struct rem_mem_pointer_impl<R (T::*)( T0) const volatile > {
typedef R type( T0); };
198 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
199 template <
class R,
class T ,
class T0>
200 struct rem_mem_pointer_impl<R (T::*)( T0 ...) const > {
typedef R type( T0 ...); };
202 template <
class R,
class T ,
class T0>
203 struct rem_mem_pointer_impl<R (T::*)( T0 ...) volatile > {
typedef R type( T0 ...); };
205 template <
class R,
class T ,
class T0>
206 struct rem_mem_pointer_impl<R (T::*)( T0 ...) const volatile > {
typedef R type( T0 ...); };
210 template <
class R,
class T ,
class T0>
211 struct rem_mem_pointer_impl<R (T::*const)( T0) > {
typedef R type( T0); };
212 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
213 template <
class R,
class T ,
class T0>
214 struct rem_mem_pointer_impl<R (T::*const)( T0 ...) > {
typedef R type( T0 ...); };
217 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
218 template <
class R,
class T ,
class T0>
219 struct rem_mem_pointer_impl<R (T::*const)( T0) const > {
typedef R type( T0); };
221 template <
class R,
class T ,
class T0>
222 struct rem_mem_pointer_impl<R (T::*const)( T0) volatile > {
typedef R type( T0); };
224 template <
class R,
class T ,
class T0>
225 struct rem_mem_pointer_impl<R (T::*const)( T0) const volatile > {
typedef R type( T0); };
227 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
228 template <
class R,
class T ,
class T0>
229 struct rem_mem_pointer_impl<R (T::*const)( T0 ...) const > {
typedef R type( T0 ...); };
231 template <
class R,
class T ,
class T0>
232 struct rem_mem_pointer_impl<R (T::*const)( T0 ...) volatile > {
typedef R type( T0 ...); };
234 template <
class R,
class T ,
class T0>
235 struct rem_mem_pointer_impl<R (T::*const)( T0 ...) const volatile > {
typedef R type( T0 ...); };
239 template <
class R,
class T ,
class T0>
240 struct rem_mem_pointer_impl<R (T::*const volatile)( T0) > {
typedef R type( T0); };
241 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
242 template <
class R,
class T ,
class T0>
243 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 ...) > {
typedef R type( T0 ...); };
246 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
247 template <
class R,
class T ,
class T0>
248 struct rem_mem_pointer_impl<R (T::*const volatile)( T0) const > {
typedef R type( T0); };
250 template <
class R,
class T ,
class T0>
251 struct rem_mem_pointer_impl<R (T::*const volatile)( T0) volatile > {
typedef R type( T0); };
253 template <
class R,
class T ,
class T0>
254 struct rem_mem_pointer_impl<R (T::*const volatile)( T0) const volatile > {
typedef R type( T0); };
256 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
257 template <
class R,
class T ,
class T0>
258 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 ...) const > {
typedef R type( T0 ...); };
260 template <
class R,
class T ,
class T0>
261 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 ...) volatile > {
typedef R type( T0 ...); };
263 template <
class R,
class T ,
class T0>
264 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 ...) const volatile > {
typedef R type( T0 ...); };
268 template <
class R,
class T ,
class T0>
269 struct rem_mem_pointer_impl<R (T::*volatile)( T0) > {
typedef R type( T0); };
270 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
271 template <
class R,
class T ,
class T0>
272 struct rem_mem_pointer_impl<R (T::*volatile)( T0 ...) > {
typedef R type( T0 ...); };
275 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
276 template <
class R,
class T ,
class T0>
277 struct rem_mem_pointer_impl<R (T::*volatile)( T0) const > {
typedef R type( T0); };
279 template <
class R,
class T ,
class T0>
280 struct rem_mem_pointer_impl<R (T::*volatile)( T0) volatile > {
typedef R type( T0); };
282 template <
class R,
class T ,
class T0>
283 struct rem_mem_pointer_impl<R (T::*volatile)( T0) const volatile > {
typedef R type( T0); };
285 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
286 template <
class R,
class T ,
class T0>
287 struct rem_mem_pointer_impl<R (T::*volatile)( T0 ...) const > {
typedef R type( T0 ...); };
289 template <
class R,
class T ,
class T0>
290 struct rem_mem_pointer_impl<R (T::*volatile)( T0 ...) volatile > {
typedef R type( T0 ...); };
292 template <
class R,
class T ,
class T0>
293 struct rem_mem_pointer_impl<R (T::*volatile)( T0 ...) const volatile > {
typedef R type( T0 ...); };
296 template <
class R,
class T ,
class T0 ,
class T1>
297 struct rem_mem_pointer_impl<R (T::*)( T0 , T1) > {
typedef R type( T0 , T1); };
298 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
299 template <
class R,
class T ,
class T0 ,
class T1>
300 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 ...) > {
typedef R type( T0 , T1 ...); };
303 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
304 template <
class R,
class T ,
class T0 ,
class T1>
305 struct rem_mem_pointer_impl<R (T::*)( T0 , T1) const > {
typedef R type( T0 , T1); };
307 template <
class R,
class T ,
class T0 ,
class T1>
308 struct rem_mem_pointer_impl<R (T::*)( T0 , T1) volatile > {
typedef R type( T0 , T1); };
310 template <
class R,
class T ,
class T0 ,
class T1>
311 struct rem_mem_pointer_impl<R (T::*)( T0 , T1) const volatile > {
typedef R type( T0 , T1); };
313 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
314 template <
class R,
class T ,
class T0 ,
class T1>
315 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 ...) const > {
typedef R type( T0 , T1 ...); };
317 template <
class R,
class T ,
class T0 ,
class T1>
318 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 ...) volatile > {
typedef R type( T0 , T1 ...); };
320 template <
class R,
class T ,
class T0 ,
class T1>
321 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 ...) const volatile > {
typedef R type( T0 , T1 ...); };
325 template <
class R,
class T ,
class T0 ,
class T1>
326 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1) > {
typedef R type( T0 , T1); };
327 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
328 template <
class R,
class T ,
class T0 ,
class T1>
329 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 ...) > {
typedef R type( T0 , T1 ...); };
332 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
333 template <
class R,
class T ,
class T0 ,
class T1>
334 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1) const > {
typedef R type( T0 , T1); };
336 template <
class R,
class T ,
class T0 ,
class T1>
337 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1) volatile > {
typedef R type( T0 , T1); };
339 template <
class R,
class T ,
class T0 ,
class T1>
340 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1) const volatile > {
typedef R type( T0 , T1); };
342 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
343 template <
class R,
class T ,
class T0 ,
class T1>
344 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 ...) const > {
typedef R type( T0 , T1 ...); };
346 template <
class R,
class T ,
class T0 ,
class T1>
347 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 ...) volatile > {
typedef R type( T0 , T1 ...); };
349 template <
class R,
class T ,
class T0 ,
class T1>
350 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 ...) const volatile > {
typedef R type( T0 , T1 ...); };
354 template <
class R,
class T ,
class T0 ,
class T1>
355 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1) > {
typedef R type( T0 , T1); };
356 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
357 template <
class R,
class T ,
class T0 ,
class T1>
358 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 ...) > {
typedef R type( T0 , T1 ...); };
361 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
362 template <
class R,
class T ,
class T0 ,
class T1>
363 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1) const > {
typedef R type( T0 , T1); };
365 template <
class R,
class T ,
class T0 ,
class T1>
366 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1) volatile > {
typedef R type( T0 , T1); };
368 template <
class R,
class T ,
class T0 ,
class T1>
369 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1) const volatile > {
typedef R type( T0 , T1); };
371 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
372 template <
class R,
class T ,
class T0 ,
class T1>
373 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 ...) const > {
typedef R type( T0 , T1 ...); };
375 template <
class R,
class T ,
class T0 ,
class T1>
376 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 ...) volatile > {
typedef R type( T0 , T1 ...); };
378 template <
class R,
class T ,
class T0 ,
class T1>
379 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 ...) const volatile > {
typedef R type( T0 , T1 ...); };
383 template <
class R,
class T ,
class T0 ,
class T1>
384 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1) > {
typedef R type( T0 , T1); };
385 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
386 template <
class R,
class T ,
class T0 ,
class T1>
387 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 ...) > {
typedef R type( T0 , T1 ...); };
390 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
391 template <
class R,
class T ,
class T0 ,
class T1>
392 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1) const > {
typedef R type( T0 , T1); };
394 template <
class R,
class T ,
class T0 ,
class T1>
395 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1) volatile > {
typedef R type( T0 , T1); };
397 template <
class R,
class T ,
class T0 ,
class T1>
398 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1) const volatile > {
typedef R type( T0 , T1); };
400 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
401 template <
class R,
class T ,
class T0 ,
class T1>
402 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 ...) const > {
typedef R type( T0 , T1 ...); };
404 template <
class R,
class T ,
class T0 ,
class T1>
405 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 ...) volatile > {
typedef R type( T0 , T1 ...); };
407 template <
class R,
class T ,
class T0 ,
class T1>
408 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 ...) const volatile > {
typedef R type( T0 , T1 ...); };
411 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
412 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2) > {
typedef R type( T0 , T1 , T2); };
413 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
414 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
415 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 ...) > {
typedef R type( T0 , T1 , T2 ...); };
418 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
419 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
420 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2) const > {
typedef R type( T0 , T1 , T2); };
422 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
423 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2) volatile > {
typedef R type( T0 , T1 , T2); };
425 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
426 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2) const volatile > {
typedef R type( T0 , T1 , T2); };
428 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
429 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
430 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 ...) const > {
typedef R type( T0 , T1 , T2 ...); };
432 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
433 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 ...) volatile > {
typedef R type( T0 , T1 , T2 ...); };
435 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
436 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 ...) const volatile > {
typedef R type( T0 , T1 , T2 ...); };
440 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
441 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2) > {
typedef R type( T0 , T1 , T2); };
442 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
443 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
444 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 ...) > {
typedef R type( T0 , T1 , T2 ...); };
447 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
448 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
449 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2) const > {
typedef R type( T0 , T1 , T2); };
451 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
452 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2) volatile > {
typedef R type( T0 , T1 , T2); };
454 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
455 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2) const volatile > {
typedef R type( T0 , T1 , T2); };
457 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
458 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
459 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 ...) const > {
typedef R type( T0 , T1 , T2 ...); };
461 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
462 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 ...) volatile > {
typedef R type( T0 , T1 , T2 ...); };
464 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
465 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 ...) const volatile > {
typedef R type( T0 , T1 , T2 ...); };
469 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
470 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2) > {
typedef R type( T0 , T1 , T2); };
471 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
472 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
473 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 ...) > {
typedef R type( T0 , T1 , T2 ...); };
476 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
477 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
478 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2) const > {
typedef R type( T0 , T1 , T2); };
480 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
481 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2) volatile > {
typedef R type( T0 , T1 , T2); };
483 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
484 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2) const volatile > {
typedef R type( T0 , T1 , T2); };
486 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
487 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
488 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 ...) const > {
typedef R type( T0 , T1 , T2 ...); };
490 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
491 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 ...) volatile > {
typedef R type( T0 , T1 , T2 ...); };
493 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
494 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 ...) const volatile > {
typedef R type( T0 , T1 , T2 ...); };
498 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
499 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2) > {
typedef R type( T0 , T1 , T2); };
500 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
501 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
502 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 ...) > {
typedef R type( T0 , T1 , T2 ...); };
505 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
506 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
507 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2) const > {
typedef R type( T0 , T1 , T2); };
509 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
510 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2) volatile > {
typedef R type( T0 , T1 , T2); };
512 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
513 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2) const volatile > {
typedef R type( T0 , T1 , T2); };
515 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
516 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
517 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 ...) const > {
typedef R type( T0 , T1 , T2 ...); };
519 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
520 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 ...) volatile > {
typedef R type( T0 , T1 , T2 ...); };
522 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2>
523 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 ...) const volatile > {
typedef R type( T0 , T1 , T2 ...); };
526 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
527 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3) > {
typedef R type( T0 , T1 , T2 , T3); };
528 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
529 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
530 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 ...) > {
typedef R type( T0 , T1 , T2 , T3 ...); };
533 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
534 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
535 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3) const > {
typedef R type( T0 , T1 , T2 , T3); };
537 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
538 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3) volatile > {
typedef R type( T0 , T1 , T2 , T3); };
540 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
541 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3) const volatile > {
typedef R type( T0 , T1 , T2 , T3); };
543 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
544 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
545 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 ...) const > {
typedef R type( T0 , T1 , T2 , T3 ...); };
547 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
548 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 ...); };
550 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
551 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 ...); };
555 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
556 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3) > {
typedef R type( T0 , T1 , T2 , T3); };
557 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
558 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
559 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 ...) > {
typedef R type( T0 , T1 , T2 , T3 ...); };
562 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
563 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
564 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3) const > {
typedef R type( T0 , T1 , T2 , T3); };
566 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
567 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3) volatile > {
typedef R type( T0 , T1 , T2 , T3); };
569 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
570 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3) const volatile > {
typedef R type( T0 , T1 , T2 , T3); };
572 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
573 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
574 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 ...) const > {
typedef R type( T0 , T1 , T2 , T3 ...); };
576 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
577 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 ...); };
579 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
580 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 ...); };
584 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
585 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3) > {
typedef R type( T0 , T1 , T2 , T3); };
586 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
587 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
588 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 ...) > {
typedef R type( T0 , T1 , T2 , T3 ...); };
591 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
592 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
593 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3) const > {
typedef R type( T0 , T1 , T2 , T3); };
595 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
596 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3) volatile > {
typedef R type( T0 , T1 , T2 , T3); };
598 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
599 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3) const volatile > {
typedef R type( T0 , T1 , T2 , T3); };
601 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
602 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
603 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 ...) const > {
typedef R type( T0 , T1 , T2 , T3 ...); };
605 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
606 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 ...); };
608 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
609 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 ...); };
613 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
614 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3) > {
typedef R type( T0 , T1 , T2 , T3); };
615 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
616 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
617 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 ...) > {
typedef R type( T0 , T1 , T2 , T3 ...); };
620 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
621 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
622 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3) const > {
typedef R type( T0 , T1 , T2 , T3); };
624 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
625 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3) volatile > {
typedef R type( T0 , T1 , T2 , T3); };
627 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
628 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3) const volatile > {
typedef R type( T0 , T1 , T2 , T3); };
630 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
631 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
632 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 ...) const > {
typedef R type( T0 , T1 , T2 , T3 ...); };
634 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
635 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 ...); };
637 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3>
638 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 ...); };
641 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
642 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4) > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
643 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
644 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
645 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
648 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
649 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
650 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4) const > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
652 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
653 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
655 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
656 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
658 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
659 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
660 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
662 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
663 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
665 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
666 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
670 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
671 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4) > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
672 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
673 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
674 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
677 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
678 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
679 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4) const > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
681 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
682 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
684 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
685 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
687 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
688 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
689 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
691 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
692 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
694 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
695 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
699 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
700 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4) > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
701 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
702 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
703 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
706 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
707 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
708 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4) const > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
710 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
711 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
713 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
714 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
716 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
717 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
718 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
720 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
721 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
723 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
724 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
728 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
729 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4) > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
730 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
731 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
732 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
735 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
736 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
737 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4) const > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
739 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
740 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
742 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
743 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4); };
745 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
746 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
747 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
749 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
750 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
752 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4>
753 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 ...); };
756 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
757 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
758 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
759 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
760 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
763 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
764 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
765 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
767 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
768 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
770 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
771 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
773 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
774 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
775 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
777 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
778 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
780 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
781 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
785 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
786 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
787 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
788 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
789 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
792 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
793 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
794 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
796 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
797 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
799 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
800 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
802 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
803 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
804 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
806 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
807 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
809 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
810 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
814 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
815 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
816 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
817 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
818 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
821 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
822 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
823 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
825 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
826 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
828 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
829 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
831 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
832 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
833 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
835 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
836 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
838 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
839 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
843 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
844 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
845 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
846 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
847 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
850 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
851 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
852 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
854 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
855 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
857 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
858 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5); };
860 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
861 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
862 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
864 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
865 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
867 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5>
868 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 ...); };
871 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
872 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
873 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
874 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
875 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
878 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
879 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
880 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
882 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
883 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
885 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
886 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
888 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
889 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
890 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
892 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
893 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
895 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
896 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
900 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
901 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
902 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
903 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
904 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
907 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
908 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
909 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
911 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
912 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
914 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
915 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
917 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
918 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
919 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
921 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
922 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
924 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
925 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
929 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
930 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
931 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
932 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
933 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
936 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
937 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
938 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
940 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
941 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
943 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
944 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
946 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
947 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
948 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
950 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
951 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
953 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
954 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
958 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
959 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
960 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
961 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
962 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
965 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
966 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
967 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
969 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
970 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
972 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
973 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6); };
975 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
976 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
977 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
979 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
980 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
982 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6>
983 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 ...); };
986 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
987 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
988 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
989 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
990 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
993 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
994 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
995 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
997 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
998 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1000 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1001 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1003 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1004 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1005 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1007 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1008 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1010 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1011 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1015 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1016 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1017 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1018 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1019 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1022 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1023 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1024 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1026 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1027 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1029 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1030 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1032 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1033 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1034 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1036 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1037 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1039 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1040 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1044 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1045 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1046 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1047 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1048 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1051 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1052 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1053 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1055 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1056 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1058 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1059 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1061 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1062 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1063 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1065 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1066 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1068 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1069 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1073 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1074 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1075 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1076 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1077 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1080 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1081 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1082 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1084 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1085 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1087 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1088 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7); };
1090 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1091 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1092 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1094 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1095 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1097 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7>
1098 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 ...); };
1101 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1102 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1103 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1104 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1105 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1108 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1109 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1110 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1112 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1113 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1115 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1116 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1118 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1119 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1120 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1122 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1123 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1125 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1126 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1130 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1131 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1132 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1133 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1134 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1137 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1138 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1139 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1141 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1142 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1144 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1145 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1147 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1148 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1149 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1151 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1152 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1154 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1155 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1159 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1160 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1161 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1162 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1163 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1166 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1167 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1168 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1170 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1171 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1173 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1174 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1176 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1177 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1178 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1180 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1181 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1183 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1184 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1188 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1189 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1190 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1191 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1192 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1195 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1196 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1197 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1199 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1200 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1202 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1203 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8); };
1205 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1206 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1207 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1209 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1210 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1212 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8>
1213 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 ...); };
1216 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1217 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1218 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1219 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1220 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1223 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1224 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1225 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1227 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1228 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1230 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1231 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1233 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1234 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1235 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1237 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1238 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1240 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1241 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1245 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1246 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1247 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1248 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1249 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1252 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1253 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1254 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1256 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1257 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1259 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1260 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1262 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1263 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1264 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1266 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1267 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1269 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1270 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1274 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1275 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1276 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1277 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1278 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1281 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1282 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1283 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1285 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1286 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1288 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1289 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1291 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1292 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1293 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1295 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1296 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1298 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1299 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1303 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1304 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1305 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1306 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1307 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1310 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1311 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1312 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1314 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1315 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1317 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1318 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9); };
1320 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1321 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1322 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1324 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1325 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1327 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9>
1328 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 ...); };
1331 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1332 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1333 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1334 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1335 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1338 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1339 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1340 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1342 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1343 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1345 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1346 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1348 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1349 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1350 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1352 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1353 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1355 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1356 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1360 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1361 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1362 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1363 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1364 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1367 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1368 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1369 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1371 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1372 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1374 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1375 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1377 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1378 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1379 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1381 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1382 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1384 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1385 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1389 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1390 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1391 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1392 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1393 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1396 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1397 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1398 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1400 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1401 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1403 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1404 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1406 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1407 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1408 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1410 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1411 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1413 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1414 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1418 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1419 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1420 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1421 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1422 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1425 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1426 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1427 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1429 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1430 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1432 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1433 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10); };
1435 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1436 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1437 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1439 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1440 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1442 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10>
1443 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 ...); };
1446 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1447 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1448 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1449 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1450 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1453 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1454 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1455 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1457 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1458 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1460 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1461 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1463 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1464 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1465 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1467 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1468 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1470 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1471 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1475 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1476 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1477 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1478 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1479 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1482 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1483 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1484 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1486 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1487 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1489 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1490 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1492 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1493 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1494 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1496 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1497 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1499 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1500 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1504 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1505 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1506 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1507 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1508 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1511 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1512 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1513 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1515 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1516 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1518 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1519 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1521 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1522 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1523 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1525 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1526 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1528 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1529 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1533 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1534 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1535 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1536 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1537 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1540 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1541 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1542 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1544 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1545 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1547 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1548 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11); };
1550 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1551 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1552 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1554 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1555 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1557 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11>
1558 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 ...); };
1561 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1562 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1563 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1564 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1565 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1568 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1569 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1570 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1572 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1573 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1575 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1576 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1578 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1579 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1580 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1582 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1583 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1585 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1586 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1590 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1591 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1592 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1593 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1594 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1597 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1598 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1599 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1601 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1602 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1604 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1605 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1607 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1608 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1609 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1611 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1612 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1614 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1615 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1619 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1620 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1621 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1622 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1623 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1626 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1627 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1628 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1630 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1631 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1633 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1634 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1636 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1637 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1638 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1640 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1641 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1643 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1644 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1648 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1649 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1650 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1651 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1652 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1655 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1656 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1657 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1659 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1660 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1662 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1663 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12); };
1665 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1666 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1667 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1669 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1670 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1672 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12>
1673 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 ...); };
1676 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1677 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1678 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1679 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1680 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1683 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1684 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1685 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1687 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1688 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1690 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1691 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1693 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1694 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1695 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1697 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1698 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1700 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1701 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1705 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1706 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1707 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1708 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1709 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1712 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1713 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1714 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1716 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1717 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1719 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1720 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1722 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1723 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1724 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1726 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1727 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1729 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1730 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1734 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1735 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1736 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1737 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1738 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1741 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1742 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1743 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1745 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1746 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1748 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1749 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1751 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1752 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1753 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1755 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1756 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1758 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1759 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1763 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1764 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1765 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1766 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1767 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1770 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1771 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1772 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1774 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1775 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1777 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1778 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13); };
1780 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1781 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1782 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1784 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1785 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1787 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13>
1788 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 ...); };
1791 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1792 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1793 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1794 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1795 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1798 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1799 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1800 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1802 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1803 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1805 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1806 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1808 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1809 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1810 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1812 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1813 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1815 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1816 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1820 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1821 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1822 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1823 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1824 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1827 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1828 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1829 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1831 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1832 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1834 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1835 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1837 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1838 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1839 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1841 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1842 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1844 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1845 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1849 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1850 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1851 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1852 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1853 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1856 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1857 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1858 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1860 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1861 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1863 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1864 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1866 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1867 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1868 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1870 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1871 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1873 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1874 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1878 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1879 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1880 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1881 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1882 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1885 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1886 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1887 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1889 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1890 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1892 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1893 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14); };
1895 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1896 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1897 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1899 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1900 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1902 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14>
1903 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 ...); };
1906 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1907 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1908 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1909 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1910 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
1913 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1914 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1915 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1917 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1918 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1920 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1921 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1923 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1924 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1925 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
1927 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1928 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
1930 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1931 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
1935 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1936 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1937 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1938 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1939 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
1942 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1943 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1944 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1946 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1947 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1949 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1950 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1952 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1953 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1954 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
1956 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1957 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
1959 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1960 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
1964 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1965 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1966 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1967 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1968 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
1971 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
1972 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1973 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1975 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1976 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1978 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1979 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1981 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1982 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1983 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
1985 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1986 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
1988 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1989 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
1993 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1994 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
1995 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
1996 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
1997 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
2000 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2001 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
2002 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
2004 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
2005 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
2007 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
2008 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15); };
2010 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2011 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
2012 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
2014 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
2015 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
2017 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15>
2018 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 ...); };
2021 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2022 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2023 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2024 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2025 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2028 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2029 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2030 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2032 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2033 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2035 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2036 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2038 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2039 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2040 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2042 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2043 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2045 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2046 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2050 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2051 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2052 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2053 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2054 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2057 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2058 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2059 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2061 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2062 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2064 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2065 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2067 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2068 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2069 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2071 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2072 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2074 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2075 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2079 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2080 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2081 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2082 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2083 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2086 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2087 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2088 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2090 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2091 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2093 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2094 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2096 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2097 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2098 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2100 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2101 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2103 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2104 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2108 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2109 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2110 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2111 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2112 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2115 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2116 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2117 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2119 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2120 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2122 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2123 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16); };
2125 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2126 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2127 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2129 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2130 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2132 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16>
2133 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 ...); };
2136 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2137 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2138 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2139 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2140 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2143 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2144 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2145 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2147 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2148 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2150 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2151 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2153 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2154 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2155 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2157 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2158 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2160 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2161 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2165 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2166 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2167 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2168 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2169 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2172 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2173 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2174 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2176 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2177 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2179 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2180 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2182 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2183 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2184 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2186 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2187 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2189 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2190 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2194 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2195 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2196 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2197 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2198 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2201 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2202 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2203 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2205 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2206 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2208 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2209 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2211 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2212 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2213 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2215 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2216 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2218 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2219 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2223 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2224 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2225 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2226 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2227 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2230 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2231 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2232 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2234 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2235 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2237 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2238 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17); };
2240 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2241 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2242 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2244 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2245 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2247 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17>
2248 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 ...); };
2251 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2252 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2253 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2254 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2255 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2258 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2259 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2260 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2262 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2263 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2265 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2266 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2268 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2269 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2270 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2272 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2273 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2275 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2276 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2280 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2281 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2282 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2283 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2284 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2287 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2288 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2289 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2291 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2292 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2294 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2295 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2297 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2298 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2299 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2301 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2302 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2304 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2305 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2309 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2310 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2311 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2312 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2313 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2316 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2317 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2318 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2320 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2321 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2323 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2324 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2326 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2327 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2328 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2330 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2331 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2333 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2334 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2338 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2339 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2340 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2341 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2342 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2345 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2346 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2347 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2349 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2350 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2352 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2353 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18); };
2355 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2356 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2357 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2359 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2360 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2362 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18>
2363 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 ...); };
2366 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2367 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2368 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2369 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2370 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2373 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2374 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2375 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2377 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2378 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2380 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2381 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2383 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2384 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2385 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2387 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2388 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2390 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2391 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2395 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2396 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2397 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2398 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2399 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2402 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2403 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2404 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2406 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2407 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2409 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2410 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2412 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2413 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2414 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2416 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2417 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2419 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2420 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2424 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2425 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2426 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2427 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2428 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2431 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2432 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2433 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2435 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2436 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2438 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2439 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2441 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2442 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2443 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2445 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2446 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2448 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2449 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2453 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2454 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2455 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2456 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2457 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2460 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2461 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2462 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2464 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2465 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2467 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2468 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19); };
2470 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2471 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2472 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2474 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2475 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2477 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19>
2478 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 ...); };
2481 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2482 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2483 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2484 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2485 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2488 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2489 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2490 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2492 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2493 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2495 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2496 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2498 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2499 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2500 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2502 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2503 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2505 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2506 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2510 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2511 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2512 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2513 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2514 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2517 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2518 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2519 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2521 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2522 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2524 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2525 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2527 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2528 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2529 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2531 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2532 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2534 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2535 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2539 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2540 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2541 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2542 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2543 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2546 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2547 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2548 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2550 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2551 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2553 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2554 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2556 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2557 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2558 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2560 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2561 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2563 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2564 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2568 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2569 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2570 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2571 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2572 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2575 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2576 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2577 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2579 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2580 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2582 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2583 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20); };
2585 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2586 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2587 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2589 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2590 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2592 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20>
2593 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 ...); };
2596 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2597 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2598 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2599 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2600 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2603 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2604 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2605 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2607 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2608 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2610 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2611 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2613 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2614 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2615 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2617 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2618 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2620 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2621 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2625 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2626 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2627 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2628 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2629 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2632 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2633 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2634 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2636 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2637 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2639 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2640 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2642 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2643 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2644 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2646 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2647 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2649 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2650 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2654 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2655 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2656 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2657 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2658 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2661 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2662 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2663 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2665 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2666 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2668 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2669 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2671 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2672 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2673 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2675 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2676 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2678 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2679 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2683 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2684 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2685 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2686 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2687 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2690 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2691 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2692 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2694 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2695 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2697 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2698 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21); };
2700 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2701 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2702 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2704 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2705 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2707 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21>
2708 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 ...); };
2711 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2712 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2713 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2714 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2715 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2718 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2719 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2720 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2722 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2723 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2725 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2726 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2728 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2729 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2730 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2732 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2733 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2735 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2736 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2740 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2741 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2742 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2743 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2744 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2747 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2748 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2749 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2751 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2752 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2754 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2755 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2757 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2758 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2759 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2761 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2762 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2764 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2765 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2769 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2770 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2771 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2772 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2773 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2776 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2777 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2778 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2780 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2781 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2783 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2784 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2786 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2787 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2788 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2790 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2791 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2793 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2794 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2798 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2799 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2800 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2801 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2802 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2805 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2806 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2807 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2809 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2810 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2812 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2813 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22); };
2815 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2816 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2817 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2819 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2820 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2822 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22>
2823 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 ...); };
2826 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2827 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2828 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2829 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2830 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2833 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2834 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2835 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2837 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2838 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2840 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2841 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2843 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2844 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2845 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2847 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2848 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2850 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2851 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2855 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2856 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2857 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2858 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2859 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2862 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2863 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2864 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2866 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2867 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2869 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2870 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2872 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2873 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2874 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2876 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2877 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2879 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2880 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2884 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2885 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2886 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2887 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2888 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2891 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2892 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2893 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2895 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2896 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2898 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2899 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2901 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2902 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2903 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2905 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2906 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2908 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2909 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2913 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2914 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2915 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2916 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2917 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2920 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2921 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2922 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2924 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2925 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2927 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2928 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23); };
2930 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2931 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2932 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2934 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2935 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2937 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23>
2938 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 ...); };
2941 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2942 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
2943 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2944 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2945 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
2948 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2949 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2950 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
2952 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2953 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
2955 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2956 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
2958 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2959 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2960 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
2962 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2963 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
2965 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2966 struct rem_mem_pointer_impl<R (T::*)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
2970 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2971 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
2972 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2973 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2974 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
2977 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
2978 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2979 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
2981 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2982 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
2984 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2985 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
2987 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
2988 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2989 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
2991 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2992 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
2994 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
2995 struct rem_mem_pointer_impl<R (T::*const)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
2999 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3000 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
3001 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
3002 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3003 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
3006 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
3007 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3008 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
3010 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3011 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
3013 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3014 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
3016 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
3017 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3018 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
3020 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3021 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
3023 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3024 struct rem_mem_pointer_impl<R (T::*const volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
3028 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3029 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
3030 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
3031 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3032 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
3035 #if !defined(BOOST_TT_NO_CV_FUNC_TEST)
3036 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3037 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
3039 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3040 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
3042 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3043 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24); };
3045 #ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
3046 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3047 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) const > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
3049 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3050 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
3052 template <
class R,
class T ,
class T0 ,
class T1 ,
class T2 ,
class T3 ,
class T4 ,
class T5 ,
class T6 ,
class T7 ,
class T8 ,
class T9 ,
class T10 ,
class T11 ,
class T12 ,
class T13 ,
class T14 ,
class T15 ,
class T16 ,
class T17 ,
class T18 ,
class T19 ,
class T20 ,
class T21 ,
class T22 ,
class T23 ,
class T24>
3053 struct rem_mem_pointer_impl<R (T::*volatile)( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...) const volatile > {
typedef R type( T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 ...); };
3059 #undef BOOST_STATIC_CONSTANT
3060 #define BOOST_PP_ITERATION_PARAMS_1 \
3061 (3, (0, 25, "boost/type_traits/remove_member_pointer.hpp"))
3062 #include BOOST_PP_ITERATE()
3065 #ifndef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
3067 BOOST_TT_AUX_TYPE_TRAIT_DEF1(remove_member_pointer,T,
typename detail::rem_mem_pointer_impl<T>::type)
3073 #include <boost/type_traits/detail/type_trait_undef.hpp>
3075 #endif // BOOST_TT_REMOVE_MEMBER_POINTER_HPP_INCLUDED
3078 #define BOOST_PP_COUNTER BOOST_PP_FRAME_ITERATION(1)
3080 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3081 struct rem_mem_pointer_impl<R (T::*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3082 @#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
3083 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3084 struct rem_mem_pointer_impl<R (T::*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3087 @#
if !defined(BOOST_TT_NO_CV_FUNC_TEST)
3088 template <class R, class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,class T)>
3089 struct rem_mem_pointer_impl<R (T::*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) const > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3091 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3092 struct rem_mem_pointer_impl<R (T::*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3094 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3095 struct rem_mem_pointer_impl<R (T::*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) const volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3097 @#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
3098 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3099 struct rem_mem_pointer_impl<R (T::*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) const > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3101 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3102 struct rem_mem_pointer_impl<R (T::*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3104 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3105 struct rem_mem_pointer_impl<R (T::*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) const volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3109 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3110 struct rem_mem_pointer_impl<R (T::*const)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3111 @#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
3112 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3113 struct rem_mem_pointer_impl<R (T::*const)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3116 @#
if !defined(BOOST_TT_NO_CV_FUNC_TEST)
3117 template <class R, class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,class T)>
3118 struct rem_mem_pointer_impl<R (T::*const)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) const > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3120 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3121 struct rem_mem_pointer_impl<R (T::*const)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3123 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3124 struct rem_mem_pointer_impl<R (T::*const)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) const volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3126 @#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
3127 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3128 struct rem_mem_pointer_impl<R (T::*const)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) const > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3130 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3131 struct rem_mem_pointer_impl<R (T::*const)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3133 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3134 struct rem_mem_pointer_impl<R (T::*const)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) const volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3138 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3139 struct rem_mem_pointer_impl<R (T::*const volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3140 @#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
3141 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3142 struct rem_mem_pointer_impl<R (T::*const volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3145 @#
if !defined(BOOST_TT_NO_CV_FUNC_TEST)
3146 template <class R, class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,class T)>
3147 struct rem_mem_pointer_impl<R (T::*const volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) const > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3149 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3150 struct rem_mem_pointer_impl<R (T::*const volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3152 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3153 struct rem_mem_pointer_impl<R (T::*const volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) const volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3155 @#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
3156 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3157 struct rem_mem_pointer_impl<R (T::*const volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) const > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3159 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3160 struct rem_mem_pointer_impl<R (T::*const volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3162 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3163 struct rem_mem_pointer_impl<R (T::*const volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) const volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3167 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3168 struct rem_mem_pointer_impl<R (T::*volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3169 @#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
3170 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3171 struct rem_mem_pointer_impl<R (T::*volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3174 @#
if !defined(BOOST_TT_NO_CV_FUNC_TEST)
3175 template <class R, class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,class T)>
3176 struct rem_mem_pointer_impl<R (T::*volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) const > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3178 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3179 struct rem_mem_pointer_impl<R (T::*volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3181 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3182 struct rem_mem_pointer_impl<R (T::*volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)) const volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T)); };
3184 @#ifndef BOOST_TT_NO_ELLIPSIS_IN_FUNC_TESTING
3185 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3186 struct rem_mem_pointer_impl<R (T::*volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) const > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3188 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3189 struct rem_mem_pointer_impl<R (T::*volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3191 template <
class R,
class T BOOST_PP_COMMA_IF(BOOST_PP_COUNTER) BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,
class T)>
3192 struct rem_mem_pointer_impl<R (T::*volatile)(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...) const volatile > {
typedef R type(BOOST_PP_ENUM_PARAMS(BOOST_PP_COUNTER,T) ...); };
3196 #undef BOOST_PP_COUNTER
3197 #endif // BOOST_PP_IS_ITERATING