File indexing completed on 2025-12-16 09:47:51
0001
0002
0003
0004
0005
0006
0007
0008 #if !defined(FUSION_MAKE_CONS_07172005_0918)
0009 #define FUSION_MAKE_CONS_07172005_0918
0010
0011 #include <boost/fusion/support/config.hpp>
0012 #include <boost/fusion/support/detail/as_fusion_element.hpp>
0013 #include <boost/fusion/container/list/cons.hpp>
0014
0015 namespace boost { namespace fusion
0016 {
0017 struct nil_;
0018
0019 namespace result_of
0020 {
0021 template <typename Car, typename Cdr = nil_>
0022 struct make_cons
0023 {
0024 typedef cons<typename detail::as_fusion_element<Car>::type, Cdr> type;
0025 };
0026 }
0027
0028 template <typename Car>
0029 BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0030 inline cons<typename detail::as_fusion_element<Car>::type>
0031 make_cons(Car const& car)
0032 {
0033 return cons<typename detail::as_fusion_element<Car>::type>(car);
0034 }
0035
0036 template <typename Car, typename Cdr>
0037 BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0038 inline cons<typename detail::as_fusion_element<Car>::type, Cdr>
0039 make_cons(Car const& car, Cdr const& cdr)
0040 {
0041 return cons<typename detail::as_fusion_element<Car>::type, Cdr>(car, cdr);
0042 }
0043 }}
0044
0045 #endif
0046