1#ifndef CLASSDESC_FUNCTIONDB12
2#define CLASSDESC_FUNCTIONDB12
3template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
4struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 1>
10template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
11struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 1>
17template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
18struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const, 1>
24#if defined(__cplusplus) && __cplusplus>=201703L
26template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
27struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept, 1>
33template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
34struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept, 1>
40template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
41struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept, 1>
47template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
48struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 2>
54template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
55struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 2>
61template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
62struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const, 2>
68#if defined(__cplusplus) && __cplusplus>=201703L
70template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
71struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept, 2>
77template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
78struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept, 2>
84template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
85struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept, 2>
91template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
92struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 3>
98template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
99struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 3>
105template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
106struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const, 3>
112#if defined(__cplusplus) && __cplusplus>=201703L
114template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
115struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept, 3>
121template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
122struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept, 3>
128template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
129struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept, 3>
135template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
136struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 4>
142template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
143struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 4>
149template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
150struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const, 4>
156#if defined(__cplusplus) && __cplusplus>=201703L
158template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
159struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept, 4>
165template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
166struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept, 4>
172template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
173struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept, 4>
179template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
180struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 5>
186template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
187struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 5>
193template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
194struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const, 5>
200#if defined(__cplusplus) && __cplusplus>=201703L
202template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
203struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept, 5>
209template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
210struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept, 5>
216template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
217struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept, 5>
223template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
224struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 6>
230template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
231struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 6>
237template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
238struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const, 6>
244#if defined(__cplusplus) && __cplusplus>=201703L
246template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
247struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept, 6>
253template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
254struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept, 6>
260template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
261struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept, 6>
267template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
268struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 7>
274template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
275struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 7>
281template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
282struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const, 7>
288#if defined(__cplusplus) && __cplusplus>=201703L
290template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
291struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept, 7>
297template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
298struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept, 7>
304template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
305struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept, 7>
311template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
312struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 8>
318template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
319struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 8>
325template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
326struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const, 8>
332#if defined(__cplusplus) && __cplusplus>=201703L
334template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
335struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept, 8>
341template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
342struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept, 8>
348template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
349struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept, 8>
355template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
356struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 9>
362template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
363struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 9>
369template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
370struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const, 9>
376#if defined(__cplusplus) && __cplusplus>=201703L
378template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
379struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept, 9>
385template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
386struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept, 9>
392template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
393struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept, 9>
399template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
400struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 10>
406template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
407struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 10>
413template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
414struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const, 10>
420#if defined(__cplusplus) && __cplusplus>=201703L
422template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
423struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept, 10>
429template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
430struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept, 10>
436template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
437struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept, 10>
443template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
444struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 11>
450template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
451struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 11>
457template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
458struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const, 11>
464#if defined(__cplusplus) && __cplusplus>=201703L
466template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
467struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept, 11>
473template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
474struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept, 11>
480template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
481struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept, 11>
487template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
488struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 12>
494template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
495struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12), 12>
501template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
502struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const, 12>
508#if defined(__cplusplus) && __cplusplus>=201703L
510template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
511struct Arg<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept, 12>
517template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
518struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept, 12>
524template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
525struct Arg<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept, 12>
531template <
class F,
template<
class>
class P>
532struct AllArgs<F,P,12>
534 static const bool value=
true && P<typename Arg<F,1>::T>::value && P<typename Arg<F,2>::T>::value && P<typename Arg<F,3>::T>::value && P<typename Arg<F,4>::T>::value && P<typename Arg<F,5>::T>::value && P<typename Arg<F,6>::T>::value && P<typename Arg<F,7>::T>::value && P<typename Arg<F,8>::T>::value && P<typename Arg<F,9>::T>::value && P<typename Arg<F,10>::T>::value && P<typename Arg<F,11>::T>::value && P<typename Arg<F,12>::T>::value;
538template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
539struct Arity<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
541 static const int V=12;
542 static const int value=12;
545template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
546struct Return<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
552template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
553struct Arity<R (* C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
555 static const int V=12;
556 static const int value=12;
559template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
560struct Return<R (* C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
566template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
567struct Arity<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
569 static const int V=12;
570 static const int value=12;
573template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
574struct Return<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
580template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
581struct Arity<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const>
583 static const int V=12;
584 static const int value=12;
587template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
588struct Return<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const>
594template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
595struct ClassOf<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
601template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
602struct ClassOf<R (*C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
608template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
609struct ClassOf<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const>
615template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
616struct is_member_function_ptr<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
618 static const bool value=
true;
621template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
622struct is_member_function_ptr<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const>
624 static const bool value=
true;
627template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
628struct is_const_method<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const>
630 static const bool value=
true;
633template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
634struct is_nonmember_function_ptr<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
636 static const bool value=
true;
639template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
640struct is_nonmember_function_ptr<R (*C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
642 static const bool value=
true;
645template <
class C,
class D,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
646class bound_method<C, R (D::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
648 typedef R (D::*M)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12);
652 static const int arity=12;
654 template <
int i>
struct Arg:
public functional::Arg<M,i> {};
655 bound_method(C& obj, M method): obj(&obj), method(method) {}
656 typename enable_if<Not<classdesc::is_const<C> >, R>::T
657 operator()(A1 a1,A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12)
const {
return (obj->*method)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12);}
658 void rebind(C& newObj) {obj=&newObj;}
659 static const bool is_const=
false;
662template <
class C,
class D,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
663class bound_method<const C, R (D::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)>
665 typedef R (D::*M)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12);
669 static const int arity=12;
671 template <
int i>
struct Arg:
public functional::Arg<M,i> {};
672 bound_method(
const C& obj, M method): obj(&obj), method(method) {}
673 R operator()(A1 a1,A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12)
const {
674 throw std::runtime_error(
"cannot call method, inappropriate argument type");
676 void rebind(C& newObj) {obj=&newObj;}
677 static const bool is_const=
false;
680template <
class C,
class D,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
681class bound_method<C, R (D::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const>
683 typedef R (D::*M)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
const;
687 static const int arity=12;
689 template <
int i>
struct Arg:
public functional::Arg<M,i> {};
690 bound_method(C& obj, M method): obj(obj), method(method) {}
691 R operator()(A1 a1,A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12)
const {
return (obj.*method)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12);}
692 static const bool is_const=
true;
695#if defined(__cplusplus) && __cplusplus>=201703L
698template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
699struct Arity<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept>
701 static const int V=12;
702 static const int value=12;
705template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
706struct Return<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept>
712template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
713struct Arity<R (* C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept>
715 static const int V=12;
716 static const int value=12;
719template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
720struct Return<R (* C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept>
726template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
727struct Arity<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept>
729 static const int V=12;
730 static const int value=12;
733template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
734struct Return<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept>
740template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
741struct Arity<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept>
743 static const int V=12;
744 static const int value=12;
747template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
748struct Return<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept>
754template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
755struct ClassOf<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept>
761template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
762struct ClassOf<R (*C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept>
768template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
769struct ClassOf<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept>
775template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
776struct is_member_function_ptr<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept>
778 static const bool value=
true;
781template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
782struct is_member_function_ptr<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept>
784 static const bool value=
true;
787template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
788struct is_const_method<R (C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept>
790 static const bool value=
true;
793template <
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
794struct is_nonmember_function_ptr<R (*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept>
796 static const bool value=
true;
799template <
class C,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
800struct is_nonmember_function_ptr<R (*C::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
noexcept>
802 static const bool value=
true;
805template <
class C,
class D,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
806class bound_method<C, R (D::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept>
808 typedef R (D::*M)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12);
812 static const int arity=12;
814 template <
int i>
struct Arg:
public functional::Arg<M,i> {};
815 bound_method(C& obj, M method): obj(&obj), method(method) {}
816 typename enable_if<Not<classdesc::is_const<C> >, R>::T
817 operator()(A1 a1,A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12)
const {
return (obj->*method)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12);}
818 void rebind(C& newObj) {obj=&newObj;}
819 static const bool is_const=
false;
822template <
class C,
class D,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
823class bound_method<C, void (D::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept>
825 typedef void (D::*M)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12);
829 static const int arity=12;
831 template <
int i>
struct Arg:
public functional::Arg<M,i> {};
832 bound_method(C& obj, M method): obj(&obj), method(method) {}
833 typename enable_if<Not<classdesc::is_const<C> > >::T
834 operator()(A1 a1,A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12)
const {(obj->*method)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12);}
835 void rebind(C& newObj) {obj=&newObj;}
836 static const bool is_const=
false;
839template <
class C,
class D,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
840class bound_method<const C, R (D::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept>
842 typedef R (D::*M)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12);
846 static const int arity=12;
848 template <
int i>
struct Arg:
public functional::Arg<M,i> {};
849 bound_method(
const C& obj, M method): obj(&obj), method(method) {}
850 R operator()(A1 a1,A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12)
const {
851 throw std::runtime_error(
"cannot call method, inappropriate argument type");
853 void rebind(C& newObj) {obj=&newObj;}
854 static const bool is_const=
false;
857template <
class C,
class D,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
858class bound_method<const C, void (D::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) noexcept>
860 typedef void (D::*M)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12);
864 static const int arity=12;
866 template <
int i>
struct Arg:
public functional::Arg<M,i> {};
867 bound_method(
const C& obj, M method): obj(&obj), method(method) {}
868 typename enable_if<Not<classdesc::is_const<C> > >::T
869 operator()(A1 a1,A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12)
const {
870 throw std::runtime_error(
"cannot call method, inappropriate argument type");
872 void rebind(C& newObj) {obj=&newObj;}
873 static const bool is_const=
false;
876template <
class C,
class D,
class R,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
877class bound_method<C, R (D::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept>
879 typedef R (D::*M)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
const;
883 static const int arity=12;
885 template <
int i>
struct Arg:
public functional::Arg<M,i> {};
886 bound_method(C& obj, M method): obj(obj), method(method) {}
887 R operator()(A1 a1,A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12)
const {
return (obj.*method)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12);}
888 static const bool is_const=
true;
891template <
class C,
class D,
class A1,
class A2,
class A3,
class A4,
class A5,
class A6,
class A7,
class A8,
class A9,
class A10,
class A11,
class A12>
892class bound_method<C, void (D::*)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12) const noexcept>
894 typedef void (D::*M)(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12)
const;
898 static const int arity=12;
900 template <
int i>
struct Arg:
public functional::Arg<M,i> {};
901 bound_method(C& obj, M method): obj(obj), method(method) {}
902 void operator()(A1 a1,A2 a2,A3 a3,A4 a4,A5 a5,A6 a6,A7 a7,A8 a8,A9 a9,A10 a10,A11 a11,A12 a12)
const {(obj.*method)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12);}
903 static const bool is_const=
true;
907template <
class F,
class Args>
908typename enable_if<And<AllArgs<F, is_rvalue>, Eq<Arity<F>::value, 12> >,
909 typename Return<F>::T>::T
910apply_nonvoid_fn(F f, Args& a, Fdummy<F> dum=0)
912 return f(a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11]);
921template <
class F,
class Args>
922typename enable_if<And<AllArgs<F, is_rvalue>, Eq<Arity<F>::value, 12> >,
924apply_void_fn(F f, Args& a, Fdummy<F> dum=0)
926 f(a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11]);
929template <
class Buffer,
class F>
930typename enable_if<Eq<Arity<F>::value, 12>,
typename Return<F>::T>::T
931callOnBuffer(Buffer& buffer, F f)
933 typename remove_const<typename remove_reference<typename Arg<F,1>::T>::type>::type a1;
935 typename remove_const<typename remove_reference<typename Arg<F,2>::T>::type>::type a2;
937 typename remove_const<typename remove_reference<typename Arg<F,3>::T>::type>::type a3;
939 typename remove_const<typename remove_reference<typename Arg<F,4>::T>::type>::type a4;
941 typename remove_const<typename remove_reference<typename Arg<F,5>::T>::type>::type a5;
943 typename remove_const<typename remove_reference<typename Arg<F,6>::T>::type>::type a6;
945 typename remove_const<typename remove_reference<typename Arg<F,7>::T>::type>::type a7;
947 typename remove_const<typename remove_reference<typename Arg<F,8>::T>::type>::type a8;
949 typename remove_const<typename remove_reference<typename Arg<F,9>::T>::type>::type a9;
951 typename remove_const<typename remove_reference<typename Arg<F,10>::T>::type>::type a10;
953 typename remove_const<typename remove_reference<typename Arg<F,11>::T>::type>::type a11;
955 typename remove_const<typename remove_reference<typename Arg<F,12>::T>::type>::type a12;
bound_method< C, R(D::*)(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12) const >::Arg Definition functiondb12.h:689
bound_method< C, R(D::*)(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12)>::Arg Definition functiondb12.h:654
bound_method< const C, R(D::*)(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12)>::Arg Definition functiondb12.h:671