]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | /*============================================================================== |
2 | Copyright (c) 2001-2010 Joel de Guzman | |
3 | Copyright (c) 2010 Thomas Heller | |
4 | ||
5 | Distributed under the Boost Software License, Version 1.0. (See accompanying | |
6 | file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
7 | ==============================================================================*/ | |
8 | namespace detail { | |
9 | template <typename Object, typename MemPtr> | |
10 | struct mem_fun_ptr_gen | |
11 | { | |
12 | mem_fun_ptr_gen(Object const& obj_, MemPtr ptr_) | |
13 | : obj(obj_) | |
14 | , ptr(ptr_) | |
15 | {} | |
16 | typename phoenix::expression::mem_fun_ptr<Object, MemPtr>::type const | |
17 | operator()() const | |
18 | { | |
19 | return phoenix::expression::mem_fun_ptr<Object, MemPtr>::make(obj, ptr); | |
20 | } | |
21 | ||
22 | ||
23 | ||
24 | ||
25 | ||
26 | ||
27 | ||
28 | template <typename A0> | |
29 | typename phoenix::expression::mem_fun_ptr< | |
30 | Object | |
31 | , MemPtr | |
32 | , A0 | |
33 | >::type const | |
34 | operator()(A0 const& a0) const | |
35 | { | |
36 | return phoenix::expression::mem_fun_ptr< | |
37 | Object | |
38 | , MemPtr | |
39 | , A0 | |
40 | >::make(obj, ptr, a0); | |
41 | } | |
42 | ||
43 | ||
44 | ||
45 | ||
46 | ||
47 | ||
48 | ||
49 | template <typename A0 , typename A1> | |
50 | typename phoenix::expression::mem_fun_ptr< | |
51 | Object | |
52 | , MemPtr | |
53 | , A0 , A1 | |
54 | >::type const | |
55 | operator()(A0 const& a0 , A1 const& a1) const | |
56 | { | |
57 | return phoenix::expression::mem_fun_ptr< | |
58 | Object | |
59 | , MemPtr | |
60 | , A0 , A1 | |
61 | >::make(obj, ptr, a0 , a1); | |
62 | } | |
63 | ||
64 | ||
65 | ||
66 | ||
67 | ||
68 | ||
69 | ||
70 | template <typename A0 , typename A1 , typename A2> | |
71 | typename phoenix::expression::mem_fun_ptr< | |
72 | Object | |
73 | , MemPtr | |
74 | , A0 , A1 , A2 | |
75 | >::type const | |
76 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2) const | |
77 | { | |
78 | return phoenix::expression::mem_fun_ptr< | |
79 | Object | |
80 | , MemPtr | |
81 | , A0 , A1 , A2 | |
82 | >::make(obj, ptr, a0 , a1 , a2); | |
83 | } | |
84 | ||
85 | ||
86 | ||
87 | ||
88 | ||
89 | ||
90 | ||
91 | template <typename A0 , typename A1 , typename A2 , typename A3> | |
92 | typename phoenix::expression::mem_fun_ptr< | |
93 | Object | |
94 | , MemPtr | |
95 | , A0 , A1 , A2 , A3 | |
96 | >::type const | |
97 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3) const | |
98 | { | |
99 | return phoenix::expression::mem_fun_ptr< | |
100 | Object | |
101 | , MemPtr | |
102 | , A0 , A1 , A2 , A3 | |
103 | >::make(obj, ptr, a0 , a1 , a2 , a3); | |
104 | } | |
105 | ||
106 | ||
107 | ||
108 | ||
109 | ||
110 | ||
111 | ||
112 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4> | |
113 | typename phoenix::expression::mem_fun_ptr< | |
114 | Object | |
115 | , MemPtr | |
116 | , A0 , A1 , A2 , A3 , A4 | |
117 | >::type const | |
118 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4) const | |
119 | { | |
120 | return phoenix::expression::mem_fun_ptr< | |
121 | Object | |
122 | , MemPtr | |
123 | , A0 , A1 , A2 , A3 , A4 | |
124 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4); | |
125 | } | |
126 | ||
127 | ||
128 | ||
129 | ||
130 | ||
131 | ||
132 | ||
133 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5> | |
134 | typename phoenix::expression::mem_fun_ptr< | |
135 | Object | |
136 | , MemPtr | |
137 | , A0 , A1 , A2 , A3 , A4 , A5 | |
138 | >::type const | |
139 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5) const | |
140 | { | |
141 | return phoenix::expression::mem_fun_ptr< | |
142 | Object | |
143 | , MemPtr | |
144 | , A0 , A1 , A2 , A3 , A4 , A5 | |
145 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5); | |
146 | } | |
147 | ||
148 | ||
149 | ||
150 | ||
151 | ||
152 | ||
153 | ||
154 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6> | |
155 | typename phoenix::expression::mem_fun_ptr< | |
156 | Object | |
157 | , MemPtr | |
158 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 | |
159 | >::type const | |
160 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6) const | |
161 | { | |
162 | return phoenix::expression::mem_fun_ptr< | |
163 | Object | |
164 | , MemPtr | |
165 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 | |
166 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6); | |
167 | } | |
168 | ||
169 | ||
170 | ||
171 | ||
172 | ||
173 | ||
174 | ||
175 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7> | |
176 | typename phoenix::expression::mem_fun_ptr< | |
177 | Object | |
178 | , MemPtr | |
179 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 | |
180 | >::type const | |
181 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7) const | |
182 | { | |
183 | return phoenix::expression::mem_fun_ptr< | |
184 | Object | |
185 | , MemPtr | |
186 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 | |
187 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7); | |
188 | } | |
189 | ||
190 | ||
191 | ||
192 | ||
193 | ||
194 | ||
195 | ||
196 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8> | |
197 | typename phoenix::expression::mem_fun_ptr< | |
198 | Object | |
199 | , MemPtr | |
200 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 | |
201 | >::type const | |
202 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8) const | |
203 | { | |
204 | return phoenix::expression::mem_fun_ptr< | |
205 | Object | |
206 | , MemPtr | |
207 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 | |
208 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8); | |
209 | } | |
210 | ||
211 | ||
212 | ||
213 | ||
214 | ||
215 | ||
216 | ||
217 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9> | |
218 | typename phoenix::expression::mem_fun_ptr< | |
219 | Object | |
220 | , MemPtr | |
221 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 | |
222 | >::type const | |
223 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9) const | |
224 | { | |
225 | return phoenix::expression::mem_fun_ptr< | |
226 | Object | |
227 | , MemPtr | |
228 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 | |
229 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9); | |
230 | } | |
231 | ||
232 | ||
233 | ||
234 | ||
235 | ||
236 | ||
237 | ||
238 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10> | |
239 | typename phoenix::expression::mem_fun_ptr< | |
240 | Object | |
241 | , MemPtr | |
242 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 | |
243 | >::type const | |
244 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10) const | |
245 | { | |
246 | return phoenix::expression::mem_fun_ptr< | |
247 | Object | |
248 | , MemPtr | |
249 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 | |
250 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10); | |
251 | } | |
252 | ||
253 | ||
254 | ||
255 | ||
256 | ||
257 | ||
258 | ||
259 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11> | |
260 | typename phoenix::expression::mem_fun_ptr< | |
261 | Object | |
262 | , MemPtr | |
263 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 | |
264 | >::type const | |
265 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11) const | |
266 | { | |
267 | return phoenix::expression::mem_fun_ptr< | |
268 | Object | |
269 | , MemPtr | |
270 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 | |
271 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11); | |
272 | } | |
273 | ||
274 | ||
275 | ||
276 | ||
277 | ||
278 | ||
279 | ||
280 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12> | |
281 | typename phoenix::expression::mem_fun_ptr< | |
282 | Object | |
283 | , MemPtr | |
284 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 | |
285 | >::type const | |
286 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12) const | |
287 | { | |
288 | return phoenix::expression::mem_fun_ptr< | |
289 | Object | |
290 | , MemPtr | |
291 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 | |
292 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12); | |
293 | } | |
294 | ||
295 | ||
296 | ||
297 | ||
298 | ||
299 | ||
300 | ||
301 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13> | |
302 | typename phoenix::expression::mem_fun_ptr< | |
303 | Object | |
304 | , MemPtr | |
305 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 | |
306 | >::type const | |
307 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13) const | |
308 | { | |
309 | return phoenix::expression::mem_fun_ptr< | |
310 | Object | |
311 | , MemPtr | |
312 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 | |
313 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13); | |
314 | } | |
315 | ||
316 | ||
317 | ||
318 | ||
319 | ||
320 | ||
321 | ||
322 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14> | |
323 | typename phoenix::expression::mem_fun_ptr< | |
324 | Object | |
325 | , MemPtr | |
326 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 | |
327 | >::type const | |
328 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14) const | |
329 | { | |
330 | return phoenix::expression::mem_fun_ptr< | |
331 | Object | |
332 | , MemPtr | |
333 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 | |
334 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14); | |
335 | } | |
336 | ||
337 | ||
338 | ||
339 | ||
340 | ||
341 | ||
342 | ||
343 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15> | |
344 | typename phoenix::expression::mem_fun_ptr< | |
345 | Object | |
346 | , MemPtr | |
347 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 | |
348 | >::type const | |
349 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15) const | |
350 | { | |
351 | return phoenix::expression::mem_fun_ptr< | |
352 | Object | |
353 | , MemPtr | |
354 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 | |
355 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15); | |
356 | } | |
357 | ||
358 | ||
359 | ||
360 | ||
361 | ||
362 | ||
363 | ||
364 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16> | |
365 | typename phoenix::expression::mem_fun_ptr< | |
366 | Object | |
367 | , MemPtr | |
368 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 | |
369 | >::type const | |
370 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16) const | |
371 | { | |
372 | return phoenix::expression::mem_fun_ptr< | |
373 | Object | |
374 | , MemPtr | |
375 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 | |
376 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16); | |
377 | } | |
378 | ||
379 | ||
380 | ||
381 | ||
382 | ||
383 | ||
384 | ||
385 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17> | |
386 | typename phoenix::expression::mem_fun_ptr< | |
387 | Object | |
388 | , MemPtr | |
389 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 | |
390 | >::type const | |
391 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16 , A17 const& a17) const | |
392 | { | |
393 | return phoenix::expression::mem_fun_ptr< | |
394 | Object | |
395 | , MemPtr | |
396 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 | |
397 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16 , a17); | |
398 | } | |
399 | ||
400 | ||
401 | ||
402 | ||
403 | ||
404 | ||
405 | ||
406 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18> | |
407 | typename phoenix::expression::mem_fun_ptr< | |
408 | Object | |
409 | , MemPtr | |
410 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 | |
411 | >::type const | |
412 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16 , A17 const& a17 , A18 const& a18) const | |
413 | { | |
414 | return phoenix::expression::mem_fun_ptr< | |
415 | Object | |
416 | , MemPtr | |
417 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 | |
418 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16 , a17 , a18); | |
419 | } | |
420 | ||
421 | ||
422 | ||
423 | ||
424 | ||
425 | ||
426 | ||
427 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19> | |
428 | typename phoenix::expression::mem_fun_ptr< | |
429 | Object | |
430 | , MemPtr | |
431 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 | |
432 | >::type const | |
433 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16 , A17 const& a17 , A18 const& a18 , A19 const& a19) const | |
434 | { | |
435 | return phoenix::expression::mem_fun_ptr< | |
436 | Object | |
437 | , MemPtr | |
438 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 | |
439 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16 , a17 , a18 , a19); | |
440 | } | |
441 | ||
442 | ||
443 | ||
444 | ||
445 | ||
446 | ||
447 | ||
448 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20> | |
449 | typename phoenix::expression::mem_fun_ptr< | |
450 | Object | |
451 | , MemPtr | |
452 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 | |
453 | >::type const | |
454 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16 , A17 const& a17 , A18 const& a18 , A19 const& a19 , A20 const& a20) const | |
455 | { | |
456 | return phoenix::expression::mem_fun_ptr< | |
457 | Object | |
458 | , MemPtr | |
459 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 | |
460 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16 , a17 , a18 , a19 , a20); | |
461 | } | |
462 | ||
463 | ||
464 | ||
465 | ||
466 | ||
467 | ||
468 | ||
469 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21> | |
470 | typename phoenix::expression::mem_fun_ptr< | |
471 | Object | |
472 | , MemPtr | |
473 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 | |
474 | >::type const | |
475 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16 , A17 const& a17 , A18 const& a18 , A19 const& a19 , A20 const& a20 , A21 const& a21) const | |
476 | { | |
477 | return phoenix::expression::mem_fun_ptr< | |
478 | Object | |
479 | , MemPtr | |
480 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 | |
481 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16 , a17 , a18 , a19 , a20 , a21); | |
482 | } | |
483 | ||
484 | ||
485 | ||
486 | ||
487 | ||
488 | ||
489 | ||
490 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22> | |
491 | typename phoenix::expression::mem_fun_ptr< | |
492 | Object | |
493 | , MemPtr | |
494 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 | |
495 | >::type const | |
496 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16 , A17 const& a17 , A18 const& a18 , A19 const& a19 , A20 const& a20 , A21 const& a21 , A22 const& a22) const | |
497 | { | |
498 | return phoenix::expression::mem_fun_ptr< | |
499 | Object | |
500 | , MemPtr | |
501 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 | |
502 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16 , a17 , a18 , a19 , a20 , a21 , a22); | |
503 | } | |
504 | ||
505 | ||
506 | ||
507 | ||
508 | ||
509 | ||
510 | ||
511 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23> | |
512 | typename phoenix::expression::mem_fun_ptr< | |
513 | Object | |
514 | , MemPtr | |
515 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 | |
516 | >::type const | |
517 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16 , A17 const& a17 , A18 const& a18 , A19 const& a19 , A20 const& a20 , A21 const& a21 , A22 const& a22 , A23 const& a23) const | |
518 | { | |
519 | return phoenix::expression::mem_fun_ptr< | |
520 | Object | |
521 | , MemPtr | |
522 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 | |
523 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16 , a17 , a18 , a19 , a20 , a21 , a22 , a23); | |
524 | } | |
525 | ||
526 | ||
527 | ||
528 | ||
529 | ||
530 | ||
531 | ||
532 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24> | |
533 | typename phoenix::expression::mem_fun_ptr< | |
534 | Object | |
535 | , MemPtr | |
536 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 | |
537 | >::type const | |
538 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16 , A17 const& a17 , A18 const& a18 , A19 const& a19 , A20 const& a20 , A21 const& a21 , A22 const& a22 , A23 const& a23 , A24 const& a24) const | |
539 | { | |
540 | return phoenix::expression::mem_fun_ptr< | |
541 | Object | |
542 | , MemPtr | |
543 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 | |
544 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16 , a17 , a18 , a19 , a20 , a21 , a22 , a23 , a24); | |
545 | } | |
546 | ||
547 | ||
548 | ||
549 | ||
550 | ||
551 | ||
552 | ||
553 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25> | |
554 | typename phoenix::expression::mem_fun_ptr< | |
555 | Object | |
556 | , MemPtr | |
557 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 | |
558 | >::type const | |
559 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16 , A17 const& a17 , A18 const& a18 , A19 const& a19 , A20 const& a20 , A21 const& a21 , A22 const& a22 , A23 const& a23 , A24 const& a24 , A25 const& a25) const | |
560 | { | |
561 | return phoenix::expression::mem_fun_ptr< | |
562 | Object | |
563 | , MemPtr | |
564 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 | |
565 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16 , a17 , a18 , a19 , a20 , a21 , a22 , a23 , a24 , a25); | |
566 | } | |
567 | ||
568 | ||
569 | ||
570 | ||
571 | ||
572 | ||
573 | ||
574 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26> | |
575 | typename phoenix::expression::mem_fun_ptr< | |
576 | Object | |
577 | , MemPtr | |
578 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 | |
579 | >::type const | |
580 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16 , A17 const& a17 , A18 const& a18 , A19 const& a19 , A20 const& a20 , A21 const& a21 , A22 const& a22 , A23 const& a23 , A24 const& a24 , A25 const& a25 , A26 const& a26) const | |
581 | { | |
582 | return phoenix::expression::mem_fun_ptr< | |
583 | Object | |
584 | , MemPtr | |
585 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 | |
586 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16 , a17 , a18 , a19 , a20 , a21 , a22 , a23 , a24 , a25 , a26); | |
587 | } | |
588 | ||
589 | ||
590 | ||
591 | ||
592 | ||
593 | ||
594 | ||
595 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27> | |
596 | typename phoenix::expression::mem_fun_ptr< | |
597 | Object | |
598 | , MemPtr | |
599 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 | |
600 | >::type const | |
601 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16 , A17 const& a17 , A18 const& a18 , A19 const& a19 , A20 const& a20 , A21 const& a21 , A22 const& a22 , A23 const& a23 , A24 const& a24 , A25 const& a25 , A26 const& a26 , A27 const& a27) const | |
602 | { | |
603 | return phoenix::expression::mem_fun_ptr< | |
604 | Object | |
605 | , MemPtr | |
606 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 | |
607 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16 , a17 , a18 , a19 , a20 , a21 , a22 , a23 , a24 , a25 , a26 , a27); | |
608 | } | |
609 | ||
610 | ||
611 | ||
612 | ||
613 | ||
614 | ||
615 | ||
616 | template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28> | |
617 | typename phoenix::expression::mem_fun_ptr< | |
618 | Object | |
619 | , MemPtr | |
620 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 | |
621 | >::type const | |
622 | operator()(A0 const& a0 , A1 const& a1 , A2 const& a2 , A3 const& a3 , A4 const& a4 , A5 const& a5 , A6 const& a6 , A7 const& a7 , A8 const& a8 , A9 const& a9 , A10 const& a10 , A11 const& a11 , A12 const& a12 , A13 const& a13 , A14 const& a14 , A15 const& a15 , A16 const& a16 , A17 const& a17 , A18 const& a18 , A19 const& a19 , A20 const& a20 , A21 const& a21 , A22 const& a22 , A23 const& a23 , A24 const& a24 , A25 const& a25 , A26 const& a26 , A27 const& a27 , A28 const& a28) const | |
623 | { | |
624 | return phoenix::expression::mem_fun_ptr< | |
625 | Object | |
626 | , MemPtr | |
627 | , A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23 , A24 , A25 , A26 , A27 , A28 | |
628 | >::make(obj, ptr, a0 , a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10 , a11 , a12 , a13 , a14 , a15 , a16 , a17 , a18 , a19 , a20 , a21 , a22 , a23 , a24 , a25 , a26 , a27 , a28); | |
629 | } | |
630 | Object const& obj; | |
631 | MemPtr ptr; | |
632 | }; | |
633 | struct make_mem_fun_ptr_gen | |
634 | : proto::callable | |
635 | { | |
636 | template<typename Sig> | |
637 | struct result; | |
638 | template<typename This, typename Object, typename MemPtr> | |
639 | struct result<This(Object, MemPtr)> | |
640 | { | |
641 | typedef | |
642 | mem_fun_ptr_gen< | |
643 | typename remove_const<typename remove_reference<Object>::type>::type | |
644 | , typename remove_const<typename remove_reference<MemPtr>::type>::type | |
645 | > | |
646 | type; | |
647 | }; | |
648 | template<typename Object, typename MemPtr> | |
649 | mem_fun_ptr_gen<Object, MemPtr> operator()(Object const & obj, MemPtr ptr) const | |
650 | { | |
651 | return mem_fun_ptr_gen<Object, MemPtr>(obj, ptr); | |
652 | } | |
653 | }; | |
654 | } |