update boost
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Includes all the adaptors for external Boost libraries.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Includes all the adaptors for the Boost.Fusion library.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts `boost::fusion::deque` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -48,7 +48,7 @@ namespace boost { namespace fusion {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace boost { namespace fusion {
|
||||
struct deque_tag;
|
||||
}}}
|
||||
@@ -103,6 +103,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
return ::boost::fusion::make_deque(static_cast<Xs&&>(xs)...);
|
||||
}
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_BOOST_FUSION_DEQUE_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Defines common methods for all Boost.Fusion sequences.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -26,7 +26,7 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
#include <cstddef>
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace detail {
|
||||
template <typename T>
|
||||
struct is_fusion_sequence {
|
||||
@@ -74,6 +74,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
struct Sequence<S, when<detail::is_fusion_sequence<S>::value>> {
|
||||
static constexpr bool value = true;
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_BOOST_FUSION_DETAIL_COMMON_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts `boost::fusion::list` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -51,7 +51,7 @@ namespace boost { namespace fusion {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace boost { namespace fusion {
|
||||
struct list_tag;
|
||||
}}}
|
||||
@@ -106,6 +106,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
return ::boost::fusion::make_list(static_cast<Xs&&>(xs)...);
|
||||
}
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_BOOST_FUSION_LIST_HPP
|
||||
|
||||
@@ -6,7 +6,7 @@ In the current version of Boost.Fusion, `boost::fusion::tuple` is basically
|
||||
an alias to `boost::fusion::vector`, so both data types share the same
|
||||
implementation in Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -38,12 +38,12 @@ namespace boost { namespace fusion {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace boost { namespace fusion {
|
||||
// In the current version of Boost.Fusion, `boost::fusion::tuple` is
|
||||
// basically an alias to `boost::fusion::vector`, hence the alias.
|
||||
using tuple_tag = vector_tag;
|
||||
}}}
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_BOOST_FUSION_TUPLE_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts `boost::fusion::vector` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -50,7 +50,7 @@ namespace boost { namespace fusion {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace boost { namespace fusion {
|
||||
struct vector_tag;
|
||||
}}}
|
||||
@@ -105,6 +105,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
return ::boost::fusion::make_vector(static_cast<Xs&&>(xs)...);
|
||||
}
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_BOOST_FUSION_VECTOR_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Includes all the adaptors for the Boost.MPL library.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts Boost.MPL IntegralConstants for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -41,7 +41,7 @@ namespace boost { namespace mpl {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace boost { namespace mpl {
|
||||
template <typename T>
|
||||
struct integral_c_tag { using value_type = T; };
|
||||
@@ -76,6 +76,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
return ::boost::mpl::integral_c<T, N::value>{};
|
||||
}
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_BOOST_MPL_INTEGRAL_C_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts `boost::mpl::list` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -94,7 +94,7 @@ namespace boost { namespace mpl {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace boost { namespace mpl {
|
||||
using list_tag = ::boost::mpl::sequence_tag< ::boost::mpl::list<>>::type;
|
||||
}}}
|
||||
@@ -181,6 +181,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
return typename decltype(list_type)::type{};
|
||||
}
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_BOOST_MPL_LIST_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts `boost::mpl::vector` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -94,7 +94,7 @@ namespace boost { namespace mpl {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace boost { namespace mpl {
|
||||
using vector_tag = ::boost::mpl::sequence_tag< ::boost::mpl::vector<>>::type;
|
||||
}}}
|
||||
@@ -196,6 +196,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
return typename decltype(vector_type)::type{};
|
||||
}
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_BOOST_MPL_VECTOR_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts `boost::tuple` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -47,7 +47,7 @@ namespace boost {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace boost { struct tuple_tag; }}
|
||||
|
||||
template <typename ...Xs>
|
||||
@@ -133,6 +133,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
>{static_cast<Xs&&>(xs)...};
|
||||
}
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_BOOST_TUPLE_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Includes all the adaptors for the standard library.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts `std::array` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -66,7 +66,7 @@ namespace std {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace std { struct array_tag; }}
|
||||
|
||||
template <typename T, std::size_t N>
|
||||
@@ -166,6 +166,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
}
|
||||
}
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_STD_ARRAY_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts `std::integer_sequence` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -62,7 +62,7 @@ namespace std {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace std { struct integer_sequence_tag; }}
|
||||
|
||||
template <typename T, T ...v>
|
||||
@@ -135,6 +135,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
static constexpr auto apply(std::integer_sequence<T, xs...> const&)
|
||||
{ return hana::bool_c<sizeof...(xs) == 0>; }
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_STD_INTEGER_SEQUENCE_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts `std::integral_constant` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -39,7 +39,7 @@ namespace std {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace std {
|
||||
template <typename T>
|
||||
struct integral_constant_tag { using value_type = T; };
|
||||
@@ -91,6 +91,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
return std::integral_constant<T, N::value>{};
|
||||
}
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_STD_INTEGRAL_CONSTANT_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts `std::pair` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -37,7 +37,7 @@ namespace std {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace std { struct pair_tag; }}
|
||||
|
||||
template <typename First, typename Second>
|
||||
@@ -86,6 +86,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
static constexpr U&& apply(std::pair<T, U>&& p)
|
||||
{ return static_cast<U&&>(p.second); }
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_STD_PAIR_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts `std::ratio` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -60,7 +60,7 @@ namespace std {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace std { struct ratio_tag; }}
|
||||
|
||||
template <std::intmax_t num, std::intmax_t den>
|
||||
@@ -159,6 +159,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
static constexpr std::ratio<0> apply(R1 const&, R2 const&)
|
||||
{ return {}; }
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_STD_RATIO_HPP
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
@file
|
||||
Adapts `std::tuple` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -51,7 +51,7 @@ namespace std {
|
||||
#endif
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace std { struct tuple_tag; }}
|
||||
|
||||
template <typename ...Xs>
|
||||
@@ -90,11 +90,7 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
template <typename Xs, std::size_t ...i>
|
||||
static constexpr decltype(auto)
|
||||
flatten_helper(Xs&& xs, std::index_sequence<i...>) {
|
||||
#if defined(BOOST_HANA_CONFIG_LIBCPP_HAS_BUG_22806)
|
||||
return std::tuple_cat(std::get<i>(xs)...);
|
||||
#else
|
||||
return std::tuple_cat(std::get<i>(static_cast<Xs&&>(xs))...);
|
||||
#endif
|
||||
}
|
||||
|
||||
template <typename Xs>
|
||||
@@ -179,6 +175,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
struct Sequence<ext::std::tuple_tag> {
|
||||
static constexpr bool value = true;
|
||||
};
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_STD_TUPLE_HPP
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
@file
|
||||
Adapts `std::vector` for use with Hana.
|
||||
|
||||
@copyright Louis Dionne 2013-2017
|
||||
@copyright Gonzalo Brito Gadeschi 2015
|
||||
Copyright Louis Dionne 2013-2022
|
||||
Copyright Gonzalo Brito Gadeschi 2015
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
|
||||
*/
|
||||
@@ -24,7 +24,7 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
#include <vector>
|
||||
|
||||
|
||||
BOOST_HANA_NAMESPACE_BEGIN
|
||||
namespace boost { namespace hana {
|
||||
namespace ext { namespace std { struct vector_tag; }}
|
||||
|
||||
template <typename T, typename Allocator>
|
||||
@@ -105,6 +105,6 @@ BOOST_HANA_NAMESPACE_BEGIN
|
||||
}
|
||||
};
|
||||
#endif
|
||||
BOOST_HANA_NAMESPACE_END
|
||||
}} // end namespace boost::hana
|
||||
|
||||
#endif // !BOOST_HANA_EXT_STD_VECTOR_HPP
|
||||
|
||||
Reference in New Issue
Block a user