|
|
|
1 |
|
// xxtuple1 internal header |
2 |
|
// NOTE: no include guard |
3 |
|
|
4 |
|
// TEMPLATE FUNCTION make_tuple |
5 |
|
|
6 |
|
#if _NARGS == 0 |
7 |
|
inline _Make_tuple<>::_Type |
8 |
|
make_tuple() |
9 |
|
{ // create from no arguments |
10 |
|
return (_Make_tuple<>::_Type()); |
11 |
|
} |
12 |
|
|
13 |
|
#else /* _NARGS == 0 */ |
14 |
|
template<_CLASS_ARG0> inline |
15 |
|
typename _Make_tuple<_ARG0_ARG1>::_Type |
16 |
|
make_tuple(_ARG0_A0) |
17 |
|
{ // create from one or more arguments |
18 |
|
return (typename _Make_tuple<_ARG0_ARG1>::_Type(_A0_A1)); |
19 |
|
} |
20 |
|
#endif /* _NARGS == 0 */ |
21 |
|
|
22 |
|
// TEMPLATE FUNCTION tie |
23 |
|
|
24 |
|
#if _NARGS == 0 |
25 |
|
inline _Make_tuple<>::_Type |
26 |
|
tie() |
27 |
|
{ // create from no arguments |
28 |
|
return (_Make_tuple<>::_Type()); |
29 |
|
} |