diff options
author | robot-contrib <robot-contrib@yandex-team.com> | 2024-08-18 13:20:24 +0300 |
---|---|---|
committer | robot-contrib <robot-contrib@yandex-team.com> | 2024-08-18 13:33:25 +0300 |
commit | 0a208ee4c03b62bd622dbc2bd4d139f9254ddc89 (patch) | |
tree | d85ad194647a1278f4aec1baaefcd8d73ebcac0f | |
parent | 011ad97e2ee2cd0b5bb4caa136ebf20f14f8fb24 (diff) | |
download | ydb-0a208ee4c03b62bd622dbc2bd4d139f9254ddc89.tar.gz |
Update contrib/restricted/boost/intrusive to 1.86.0
515f0478e9457449f41a3a8173d3dd8e5df2de0f
4 files changed, 36 insertions, 34 deletions
diff --git a/contrib/restricted/boost/intrusive/include/boost/intrusive/detail/algorithm.hpp b/contrib/restricted/boost/intrusive/include/boost/intrusive/detail/algorithm.hpp index d2421ffaad..f20c9d1030 100644 --- a/contrib/restricted/boost/intrusive/include/boost/intrusive/detail/algorithm.hpp +++ b/contrib/restricted/boost/intrusive/include/boost/intrusive/detail/algorithm.hpp @@ -26,15 +26,15 @@ namespace intrusive { struct algo_pred_equal { - template<class T> - bool operator()(const T &x, const T &y) const + template<class T, class T2> + bool operator()(const T &x, const T2 &y) const { return x == y; } }; struct algo_pred_less { - template<class T> - bool operator()(const T &x, const T &y) const + template<class T, class T2> + bool operator()(const T &x, const T2 &y) const { return x < y; } }; @@ -49,10 +49,6 @@ bool algo_equal(InputIt1 first1, InputIt1 last1, InputIt2 first2, BinaryPredicat return true; } -template<class InputIt1, class InputIt2> -bool algo_equal(InputIt1 first1, InputIt1 last1, InputIt2 first2) -{ return (algo_equal)(first1, last1, first2, algo_pred_equal()); } - template<class InputIt1, class InputIt2, class BinaryPredicate> bool algo_equal(InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, BinaryPredicate pred) { @@ -63,6 +59,10 @@ bool algo_equal(InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2 } template<class InputIt1, class InputIt2> +bool algo_equal(InputIt1 first1, InputIt1 last1, InputIt2 first2) +{ return (algo_equal)(first1, last1, first2, algo_pred_equal()); } + +template<class InputIt1, class InputIt2> bool algo_equal(InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2) { return (algo_equal)(first1, last1, first2, last2, algo_pred_equal()); } diff --git a/contrib/restricted/boost/intrusive/include/boost/intrusive/detail/hook_traits.hpp b/contrib/restricted/boost/intrusive/include/boost/intrusive/detail/hook_traits.hpp index c33ede0dcd..bc51cdebeb 100644 --- a/contrib/restricted/boost/intrusive/include/boost/intrusive/detail/hook_traits.hpp +++ b/contrib/restricted/boost/intrusive/include/boost/intrusive/detail/hook_traits.hpp @@ -46,6 +46,10 @@ struct bhtraits_base template rebind_pointer<T>::type pointer; typedef typename pointer_traits<node_ptr>:: template rebind_pointer<const T>::type const_pointer; + typedef typename pointer_traits<node_ptr>:: + template rebind_pointer<node_holder_type>::type node_holder_ptr; + typedef typename pointer_traits<node_ptr>:: + template rebind_pointer<const node_holder_type>::type const_node_holder_ptr; typedef T & reference; typedef const T & const_reference; typedef node_holder_type & node_holder_reference; @@ -55,16 +59,14 @@ struct bhtraits_base inline static pointer to_value_ptr(node_ptr n) { - pointer p = pointer_traits<pointer>::pointer_to - (static_cast<reference>(static_cast<node_holder_reference>(*n))); - return p; + return pointer_traits<pointer>:: + static_cast_from(pointer_traits<node_holder_ptr>::static_cast_from(n)); } inline static const_pointer to_value_ptr(const_node_ptr n) { - const_pointer p = pointer_traits<const_pointer>::pointer_to - (static_cast<const_reference>(static_cast<const_node_holder_reference>(*n))); - return p; + return pointer_traits<const_pointer>:: + static_cast_from(pointer_traits<const_node_holder_ptr>::static_cast_from(n)); } inline static node_ptr to_node_ptr(reference value) diff --git a/contrib/restricted/boost/intrusive/include/boost/intrusive/pointer_traits.hpp b/contrib/restricted/boost/intrusive/include/boost/intrusive/pointer_traits.hpp index 48d984eef6..1b2ed05763 100644 --- a/contrib/restricted/boost/intrusive/include/boost/intrusive/pointer_traits.hpp +++ b/contrib/restricted/boost/intrusive/include/boost/intrusive/pointer_traits.hpp @@ -130,7 +130,7 @@ struct pointer_traits //! //! <b>Note</b>: For non-conforming compilers only the existence of a member function called //! <code>pointer_to</code> is checked. - inline static pointer pointer_to(reference r) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer pointer_to(reference r) BOOST_NOEXCEPT { //Non-standard extension, it does not require Ptr::pointer_to. If not present //tries to converts &r to pointer. @@ -150,7 +150,7 @@ struct pointer_traits //! <b>Note</b>: For non-conforming compilers only the existence of a member function called //! <code>static_cast_from</code> is checked. template<class UPtr> - inline static pointer static_cast_from(const UPtr &uptr) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer static_cast_from(const UPtr &uptr) BOOST_NOEXCEPT { typedef const UPtr &RefArg; const bool value = boost::intrusive::detail:: @@ -171,7 +171,7 @@ struct pointer_traits //! <b>Note</b>: For non-conforming compilers only the existence of a member function called //! <code>const_cast_from</code> is checked. template<class UPtr> - inline static pointer const_cast_from(const UPtr &uptr) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer const_cast_from(const UPtr &uptr) BOOST_NOEXCEPT { typedef const UPtr &RefArg; const bool value = boost::intrusive::detail:: @@ -192,7 +192,7 @@ struct pointer_traits //! <b>Note</b>: For non-conforming compilers only the existence of a member function called //! <code>dynamic_cast_from</code> is checked. template<class UPtr> - inline static pointer dynamic_cast_from(const UPtr &uptr) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer dynamic_cast_from(const UPtr &uptr) BOOST_NOEXCEPT { typedef const UPtr &RefArg; const bool value = boost::intrusive::detail:: @@ -208,46 +208,46 @@ struct pointer_traits private: //priv_to_raw_pointer template <class T> - inline static T* to_raw_pointer(T* p) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static T* to_raw_pointer(T* p) BOOST_NOEXCEPT { return p; } template <class Pointer> - inline static typename pointer_traits<Pointer>::element_type* + BOOST_INTRUSIVE_FORCEINLINE static typename pointer_traits<Pointer>::element_type* to_raw_pointer(const Pointer &p) BOOST_NOEXCEPT { return pointer_traits::to_raw_pointer(p.operator->()); } //priv_pointer_to - inline static pointer priv_pointer_to(boost::intrusive::detail::true_, reference r) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer priv_pointer_to(boost::intrusive::detail::true_, reference r) BOOST_NOEXCEPT { return Ptr::pointer_to(r); } - inline static pointer priv_pointer_to(boost::intrusive::detail::false_, reference r) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer priv_pointer_to(boost::intrusive::detail::false_, reference r) BOOST_NOEXCEPT { return pointer(boost::intrusive::detail::addressof(r)); } //priv_static_cast_from template<class UPtr> - inline static pointer priv_static_cast_from(boost::intrusive::detail::true_, const UPtr &uptr) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer priv_static_cast_from(boost::intrusive::detail::true_, const UPtr &uptr) BOOST_NOEXCEPT { return Ptr::static_cast_from(uptr); } template<class UPtr> - inline static pointer priv_static_cast_from(boost::intrusive::detail::false_, const UPtr &uptr) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer priv_static_cast_from(boost::intrusive::detail::false_, const UPtr &uptr) BOOST_NOEXCEPT { return uptr ? pointer_to(*static_cast<element_type*>(to_raw_pointer(uptr))) : pointer(); } //priv_const_cast_from template<class UPtr> - inline static pointer priv_const_cast_from(boost::intrusive::detail::true_, const UPtr &uptr) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer priv_const_cast_from(boost::intrusive::detail::true_, const UPtr &uptr) BOOST_NOEXCEPT { return Ptr::const_cast_from(uptr); } template<class UPtr> - inline static pointer priv_const_cast_from(boost::intrusive::detail::false_, const UPtr &uptr) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer priv_const_cast_from(boost::intrusive::detail::false_, const UPtr &uptr) BOOST_NOEXCEPT { return uptr ? pointer_to(const_cast<element_type&>(*uptr)) : pointer(); } //priv_dynamic_cast_from template<class UPtr> - inline static pointer priv_dynamic_cast_from(boost::intrusive::detail::true_, const UPtr &uptr) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer priv_dynamic_cast_from(boost::intrusive::detail::true_, const UPtr &uptr) BOOST_NOEXCEPT { return Ptr::dynamic_cast_from(uptr); } template<class UPtr> - inline static pointer priv_dynamic_cast_from(boost::intrusive::detail::false_, const UPtr &uptr) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer priv_dynamic_cast_from(boost::intrusive::detail::false_, const UPtr &uptr) BOOST_NOEXCEPT { return uptr ? pointer_to(dynamic_cast<element_type&>(*uptr)) : pointer(); } ///@endcond }; @@ -296,25 +296,25 @@ struct pointer_traits<T*> //! <b>Returns</b>: addressof(r) //! - inline static pointer pointer_to(reference r) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer pointer_to(reference r) BOOST_NOEXCEPT { return boost::intrusive::detail::addressof(r); } //! <b>Returns</b>: static_cast<pointer>(uptr) //! template<class U> - inline static pointer static_cast_from(U *uptr) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer static_cast_from(U *uptr) BOOST_NOEXCEPT { return static_cast<pointer>(uptr); } //! <b>Returns</b>: const_cast<pointer>(uptr) //! template<class U> - inline static pointer const_cast_from(U *uptr) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer const_cast_from(U *uptr) BOOST_NOEXCEPT { return const_cast<pointer>(uptr); } //! <b>Returns</b>: dynamic_cast<pointer>(uptr) //! template<class U> - inline static pointer dynamic_cast_from(U *uptr) BOOST_NOEXCEPT + BOOST_INTRUSIVE_FORCEINLINE static pointer dynamic_cast_from(U *uptr) BOOST_NOEXCEPT { return dynamic_cast<pointer>(uptr); } }; diff --git a/contrib/restricted/boost/intrusive/ya.make b/contrib/restricted/boost/intrusive/ya.make index df73bcb529..bf2202d4e9 100644 --- a/contrib/restricted/boost/intrusive/ya.make +++ b/contrib/restricted/boost/intrusive/ya.make @@ -9,9 +9,9 @@ LICENSE( LICENSE_TEXTS(.yandex_meta/licenses.list.txt) -VERSION(1.85.0) +VERSION(1.86.0) -ORIGINAL_SOURCE(https://github.com/boostorg/intrusive/archive/boost-1.85.0.tar.gz) +ORIGINAL_SOURCE(https://github.com/boostorg/intrusive/archive/boost-1.86.0.tar.gz) PEERDIR( contrib/restricted/boost/assert |