blob: 29c017a1f6863b508cc38535ffd8e79b19bd05f6 [file] [log] [blame]
Jeff Thompsona28eed82013-08-22 16:21:10 -07001
2// Copyright Peter Dimov 2001-2002
3// Copyright Aleksey Gurtovoy 2001-2004
4//
5// Distributed under the Boost Software License, Version 1.0.
6// (See accompanying file LICENSE_1_0.txt or copy at
7// http://www.boost.org/LICENSE_1_0.txt)
8//
9
10// *Preprocessed* version of the main "arg.hpp" header
11// -- DO NOT modify by hand!
12
Jeff Thompson3d613fd2013-10-15 15:39:04 -070013NDNBOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN
Jeff Thompsona28eed82013-08-22 16:21:10 -070014template<> struct arg< -1 >
15{
Jeff Thompson3d613fd2013-10-15 15:39:04 -070016 NDNBOOST_STATIC_CONSTANT(int, value = -1);
17 NDNBOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
18 NDNBOOST_MPL_AUX_ARG_TYPEDEF(na, type)
Jeff Thompsona28eed82013-08-22 16:21:10 -070019
20 template<
21 typename U1, typename U2, typename U3, typename U4, typename U5
22 >
23 struct apply
24 {
25 typedef U1 type;
Jeff Thompson3d613fd2013-10-15 15:39:04 -070026 NDNBOOST_MPL_AUX_ASSERT_NOT_NA(type);
Jeff Thompsona28eed82013-08-22 16:21:10 -070027 };
28};
29
30template<> struct arg<1>
31{
Jeff Thompson3d613fd2013-10-15 15:39:04 -070032 NDNBOOST_STATIC_CONSTANT(int, value = 1);
Jeff Thompsona28eed82013-08-22 16:21:10 -070033 typedef arg<2> next;
Jeff Thompson3d613fd2013-10-15 15:39:04 -070034 NDNBOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
35 NDNBOOST_MPL_AUX_ARG_TYPEDEF(na, type)
Jeff Thompsona28eed82013-08-22 16:21:10 -070036
37 template<
38 typename U1, typename U2, typename U3, typename U4, typename U5
39 >
40 struct apply
41 {
42 typedef U1 type;
Jeff Thompson3d613fd2013-10-15 15:39:04 -070043 NDNBOOST_MPL_AUX_ASSERT_NOT_NA(type);
Jeff Thompsona28eed82013-08-22 16:21:10 -070044 };
45};
46
47template<> struct arg<2>
48{
Jeff Thompson3d613fd2013-10-15 15:39:04 -070049 NDNBOOST_STATIC_CONSTANT(int, value = 2);
Jeff Thompsona28eed82013-08-22 16:21:10 -070050 typedef arg<3> next;
Jeff Thompson3d613fd2013-10-15 15:39:04 -070051 NDNBOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
52 NDNBOOST_MPL_AUX_ARG_TYPEDEF(na, type)
Jeff Thompsona28eed82013-08-22 16:21:10 -070053
54 template<
55 typename U1, typename U2, typename U3, typename U4, typename U5
56 >
57 struct apply
58 {
59 typedef U2 type;
Jeff Thompson3d613fd2013-10-15 15:39:04 -070060 NDNBOOST_MPL_AUX_ASSERT_NOT_NA(type);
Jeff Thompsona28eed82013-08-22 16:21:10 -070061 };
62};
63
64template<> struct arg<3>
65{
Jeff Thompson3d613fd2013-10-15 15:39:04 -070066 NDNBOOST_STATIC_CONSTANT(int, value = 3);
Jeff Thompsona28eed82013-08-22 16:21:10 -070067 typedef arg<4> next;
Jeff Thompson3d613fd2013-10-15 15:39:04 -070068 NDNBOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
69 NDNBOOST_MPL_AUX_ARG_TYPEDEF(na, type)
Jeff Thompsona28eed82013-08-22 16:21:10 -070070
71 template<
72 typename U1, typename U2, typename U3, typename U4, typename U5
73 >
74 struct apply
75 {
76 typedef U3 type;
Jeff Thompson3d613fd2013-10-15 15:39:04 -070077 NDNBOOST_MPL_AUX_ASSERT_NOT_NA(type);
Jeff Thompsona28eed82013-08-22 16:21:10 -070078 };
79};
80
81template<> struct arg<4>
82{
Jeff Thompson3d613fd2013-10-15 15:39:04 -070083 NDNBOOST_STATIC_CONSTANT(int, value = 4);
Jeff Thompsona28eed82013-08-22 16:21:10 -070084 typedef arg<5> next;
Jeff Thompson3d613fd2013-10-15 15:39:04 -070085 NDNBOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
86 NDNBOOST_MPL_AUX_ARG_TYPEDEF(na, type)
Jeff Thompsona28eed82013-08-22 16:21:10 -070087
88 template<
89 typename U1, typename U2, typename U3, typename U4, typename U5
90 >
91 struct apply
92 {
93 typedef U4 type;
Jeff Thompson3d613fd2013-10-15 15:39:04 -070094 NDNBOOST_MPL_AUX_ASSERT_NOT_NA(type);
Jeff Thompsona28eed82013-08-22 16:21:10 -070095 };
96};
97
98template<> struct arg<5>
99{
Jeff Thompson3d613fd2013-10-15 15:39:04 -0700100 NDNBOOST_STATIC_CONSTANT(int, value = 5);
Jeff Thompsona28eed82013-08-22 16:21:10 -0700101 typedef arg<6> next;
Jeff Thompson3d613fd2013-10-15 15:39:04 -0700102 NDNBOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
103 NDNBOOST_MPL_AUX_ARG_TYPEDEF(na, type)
Jeff Thompsona28eed82013-08-22 16:21:10 -0700104
105 template<
106 typename U1, typename U2, typename U3, typename U4, typename U5
107 >
108 struct apply
109 {
110 typedef U5 type;
Jeff Thompson3d613fd2013-10-15 15:39:04 -0700111 NDNBOOST_MPL_AUX_ASSERT_NOT_NA(type);
Jeff Thompsona28eed82013-08-22 16:21:10 -0700112 };
113};
114
Jeff Thompson3d613fd2013-10-15 15:39:04 -0700115NDNBOOST_MPL_AUX_NONTYPE_ARITY_SPEC(1,int, arg)
Jeff Thompsona28eed82013-08-22 16:21:10 -0700116
Jeff Thompson3d613fd2013-10-15 15:39:04 -0700117NDNBOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE