]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/function_types/include/boost/function_types/detail/pp_loop.hpp
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / function_types / include / boost / function_types / detail / pp_loop.hpp
1
2 // (C) Copyright Tobias Schwinger
3 //
4 // Use modification and distribution are subject to the boost Software License,
5 // Version 1.0. (See http://www.boost.org/LICENSE_1_0.txt).
6
7 //------------------------------------------------------------------------------
8
9 // no include guards, this file is intended for multiple inclusions
10
11 #ifndef BOOST_FT_DETAIL_PP_LOOP_HPP_INCLUDED
12 #define BOOST_FT_DETAIL_PP_LOOP_HPP_INCLUDED
13 # include <boost/preprocessor/facilities/expand.hpp>
14 # include <boost/preprocessor/facilities/empty.hpp>
15 # include <boost/preprocessor/punctuation/paren.hpp>
16 #endif
17
18 #include <boost/function_types/detail/encoding/def.hpp>
19 #include <boost/function_types/detail/encoding/aliases_def.hpp>
20
21 #if defined(BOOST_FT_PREPROCESSING_MODE)
22 # define BOOST_FT_loop <boost/function_types/detail/pp_cc_loop/master.hpp>
23 #else
24 # define BOOST_FT_loop \
25 <boost/function_types/detail/pp_cc_loop/preprocessed.hpp>
26 #endif
27
28 #if defined(BOOST_FT_al_path)
29
30 # define BOOST_FT_cc_file \
31 <boost/function_types/detail/pp_variate_loop/preprocessed.hpp>
32 # define BOOST_FT_variate_file \
33 <boost/function_types/detail/pp_arity_loop.hpp>
34
35 # ifndef BOOST_FT_type_function
36 # define BOOST_FT_type_function(cc,name) BOOST_FT_SYNTAX( \
37 R BOOST_PP_EMPTY,BOOST_PP_EMPTY,cc,BOOST_PP_EMPTY,name,BOOST_PP_EMPTY)
38 # endif
39 # ifndef BOOST_FT_type_function_pointer
40 # define BOOST_FT_type_function_pointer(cc,name) BOOST_FT_SYNTAX( \
41 R BOOST_PP_EMPTY,BOOST_PP_LPAREN,cc,* BOOST_PP_EMPTY,name,BOOST_PP_RPAREN)
42 # endif
43 # ifndef BOOST_FT_type_function_reference
44 # define BOOST_FT_type_function_reference(cc,name) BOOST_FT_SYNTAX( \
45 R BOOST_PP_EMPTY,BOOST_PP_LPAREN,cc,& BOOST_PP_EMPTY,name,BOOST_PP_RPAREN)
46 # endif
47 # ifndef BOOST_FT_type_member_function_pointer
48 # define BOOST_FT_type_member_function_pointer(cc,name) BOOST_FT_SYNTAX( \
49 R BOOST_PP_EMPTY,BOOST_PP_LPAREN,cc,T0::* BOOST_PP_EMPTY,name,BOOST_PP_RPAREN)
50 # endif
51
52 # include BOOST_FT_loop
53
54 # undef BOOST_FT_type_function
55 # undef BOOST_FT_type_function_pointer
56 # undef BOOST_FT_type_function_reference
57 # undef BOOST_FT_type_member_function_pointer
58
59 # undef BOOST_FT_variations
60 # undef BOOST_FT_variate_file
61 # undef BOOST_FT_cc_file
62 # undef BOOST_FT_al_path
63
64 #elif defined(BOOST_FT_cc_file)
65
66 # include BOOST_FT_loop
67 # undef BOOST_FT_cc_file
68
69 #else
70
71 # error "argument missing"
72
73 #endif
74
75 #undef BOOST_FT_loop
76
77 #include <boost/function_types/detail/encoding/aliases_undef.hpp>
78 #include <boost/function_types/detail/encoding/undef.hpp>
79
80