diff options
author | Andrey Khalyavin <halyavin@gmail.com> | 2022-02-10 16:46:29 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:46:29 +0300 |
commit | f773626848a7c7456803654292e716b83d69cc12 (patch) | |
tree | db052dfcf9134f492bdbb962cb6c16cea58e1ed3 /contrib/libs/cxxsupp/libcxx/include/__node_handle | |
parent | f43ab775d197d300eb67bd4497632b909cd7c2a5 (diff) | |
download | ydb-f773626848a7c7456803654292e716b83d69cc12.tar.gz |
Restoring authorship annotation for Andrey Khalyavin <halyavin@gmail.com>. Commit 1 of 2.
Diffstat (limited to 'contrib/libs/cxxsupp/libcxx/include/__node_handle')
-rw-r--r-- | contrib/libs/cxxsupp/libcxx/include/__node_handle | 104 |
1 files changed, 52 insertions, 52 deletions
diff --git a/contrib/libs/cxxsupp/libcxx/include/__node_handle b/contrib/libs/cxxsupp/libcxx/include/__node_handle index f313409bb6..d3ae0367b9 100644 --- a/contrib/libs/cxxsupp/libcxx/include/__node_handle +++ b/contrib/libs/cxxsupp/libcxx/include/__node_handle @@ -10,56 +10,56 @@ #ifndef _LIBCPP___NODE_HANDLE #define _LIBCPP___NODE_HANDLE -/* - -template<unspecified> -class node-handle { -public: - using value_type = see below; // not present for map containers - using key_type = see below; // not present for set containers - using mapped_type = see below; // not present for set containers - using allocator_type = see below; - -private: - using container_node_type = unspecified; // exposition only - using ator_traits = allocator_traits<allocator_type>; // exposition only - - typename ator_traits::template - rebind_traits<container_node_type>::pointer ptr_; // exposition only - optional<allocator_type> alloc_; // exposition only - -public: - // [container.node.cons], constructors, copy, and assignment - constexpr node-handle() noexcept : ptr_(), alloc_() {} - node-handle(node-handle&&) noexcept; - node-handle& operator=(node-handle&&); - - // [container.node.dtor], destructor - ~node-handle(); - - // [container.node.observers], observers - value_type& value() const; // not present for map containers - key_type& key() const; // not present for set containers - mapped_type& mapped() const; // not present for set containers - - allocator_type get_allocator() const; - explicit operator bool() const noexcept; - [[nodiscard]] bool empty() const noexcept; // nodiscard since C++20 - - // [container.node.modifiers], modifiers - void swap(node-handle&) - noexcept(ator_traits::propagate_on_container_swap::value || - ator_traits::is_always_equal::value); - - friend void swap(node-handle& x, node-handle& y) noexcept(noexcept(x.swap(y))) { - x.swap(y); - } -}; - -*/ - +/* + +template<unspecified> +class node-handle { +public: + using value_type = see below; // not present for map containers + using key_type = see below; // not present for set containers + using mapped_type = see below; // not present for set containers + using allocator_type = see below; + +private: + using container_node_type = unspecified; // exposition only + using ator_traits = allocator_traits<allocator_type>; // exposition only + + typename ator_traits::template + rebind_traits<container_node_type>::pointer ptr_; // exposition only + optional<allocator_type> alloc_; // exposition only + +public: + // [container.node.cons], constructors, copy, and assignment + constexpr node-handle() noexcept : ptr_(), alloc_() {} + node-handle(node-handle&&) noexcept; + node-handle& operator=(node-handle&&); + + // [container.node.dtor], destructor + ~node-handle(); + + // [container.node.observers], observers + value_type& value() const; // not present for map containers + key_type& key() const; // not present for set containers + mapped_type& mapped() const; // not present for set containers + + allocator_type get_allocator() const; + explicit operator bool() const noexcept; + [[nodiscard]] bool empty() const noexcept; // nodiscard since C++20 + + // [container.node.modifiers], modifiers + void swap(node-handle&) + noexcept(ator_traits::propagate_on_container_swap::value || + ator_traits::is_always_equal::value); + + friend void swap(node-handle& x, node-handle& y) noexcept(noexcept(x.swap(y))) { + x.swap(y); + } +}; + +*/ + #include <__config> -#include <__debug> +#include <__debug> #include <memory> #include <optional> @@ -102,7 +102,7 @@ private: optional<allocator_type> __alloc_; _LIBCPP_INLINE_VISIBILITY - void __release_ptr() + void __release_ptr() { __ptr_ = nullptr; __alloc_ = _VSTD::nullopt; @@ -239,7 +239,7 @@ using __map_node_handle = __basic_node_handle< _NodeType, _Alloc, __map_node_handle_specifics>; template <class _Iterator, class _NodeType> -struct _LIBCPP_TEMPLATE_VIS __insert_return_type +struct _LIBCPP_TEMPLATE_VIS __insert_return_type { _Iterator position; bool inserted; @@ -250,4 +250,4 @@ struct _LIBCPP_TEMPLATE_VIS __insert_return_type _LIBCPP_END_NAMESPACE_STD -#endif // _LIBCPP___NODE_HANDLE +#endif // _LIBCPP___NODE_HANDLE |