]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/fusion/container/list/detail/cpp03/list_to_cons.hpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / boost / fusion / container / list / detail / cpp03 / list_to_cons.hpp
1 /*=============================================================================
2 Copyright (c) 2001-2011 Joel de Guzman
3
4 Distributed under the Boost Software License, Version 1.0. (See accompanying
5 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6 ==============================================================================*/
7 #if !defined(FUSION_LIST_TO_CONS_07172005_1041)
8 #define FUSION_LIST_TO_CONS_07172005_1041
9
10 #include <boost/fusion/support/config.hpp>
11 #include <boost/fusion/container/list/cons.hpp>
12 #include <boost/fusion/container/list/detail/cpp03/limits.hpp>
13 #include <boost/preprocessor/repetition/enum.hpp>
14 #include <boost/preprocessor/repetition/enum_params.hpp>
15 #include <boost/preprocessor/repetition/enum_shifted_params.hpp>
16 #include <boost/preprocessor/arithmetic/dec.hpp>
17
18 #define FUSION_VOID(z, n, _) void_
19
20 namespace boost { namespace fusion
21 {
22 struct nil_;
23 struct void_;
24 }}
25
26 #if !defined(BOOST_FUSION_DONT_USE_PREPROCESSED_FILES)
27 #include <boost/fusion/container/list/detail/cpp03/preprocessed/list_to_cons.hpp>
28 #else
29 #if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
30 #pragma wave option(preserve: 2, line: 0, output: "preprocessed/list_to_cons" FUSION_MAX_LIST_SIZE_STR ".hpp")
31 #endif
32
33 /*=============================================================================
34 Copyright (c) 2001-2011 Joel de Guzman
35
36 Distributed under the Boost Software License, Version 1.0. (See accompanying
37 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
38
39 This is an auto-generated file. Do not edit!
40 ==============================================================================*/
41
42 #if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
43 #pragma wave option(preserve: 1)
44 #endif
45
46 namespace boost { namespace fusion { namespace detail
47 {
48 template <BOOST_PP_ENUM_PARAMS(FUSION_MAX_LIST_SIZE, typename T)>
49 struct list_to_cons
50 {
51 typedef T0 head_type;
52 typedef list_to_cons<
53 BOOST_PP_ENUM_SHIFTED_PARAMS(FUSION_MAX_LIST_SIZE, T), void_>
54 tail_list_to_cons;
55 typedef typename tail_list_to_cons::type tail_type;
56
57 typedef cons<head_type, tail_type> type;
58
59 #include <boost/fusion/container/list/detail/cpp03/list_to_cons_call.hpp>
60 };
61
62 template <>
63 struct list_to_cons<BOOST_PP_ENUM(FUSION_MAX_LIST_SIZE, FUSION_VOID, _)>
64 {
65 typedef nil_ type;
66 };
67 }}}
68
69 #if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
70 #pragma wave option(output: null)
71 #endif
72
73 #endif // BOOST_FUSION_DONT_USE_PREPROCESSED_FILES
74
75 #undef FUSION_VOID
76 #endif