|
| template<typename A = Alloc> |
| | threaded () noexcept(std::is_nothrow_default_constructible_v< Alloc >) |
| |
| template<typename... Args, typename = std::enable_if_t< std::is_constructible_v<Alloc, Args...>>> |
| | threaded (Args &&... args) noexcept(std::is_nothrow_constructible_v< Alloc, Args... >) |
| | Constructor for forwarding any arguments to the underlying allocator. More...
|
| |
| | threaded (const threaded &)=delete |
| |
| | threaded (threaded &&)=delete |
| |
| threaded & | operator= (const threaded &)=delete |
| |
| threaded & | operator= (threaded &&)=delete |
| |
| bool | operator== (const threaded &rhs) const noexcept(detail::has_nothrow_equal_v< Alloc >) |
| |
| bool | operator!= (const threaded &rhs) const noexcept(detail::has_nothrow_not_equal_v< Alloc >) |
| |
| void * | allocate (size_t n) |
| |
| void | deallocate (void *p, size_t n) |
| |
| template<typename T , typename... Args> |
| std::enable_if< detail::has_construct_v< Alloc, T *, Args... >, void >::type | construct (T *p, Args &&... args) noexcept(detail::has_nothrow_construct_v< Alloc, T *, Args... >) |
| |
| template<typename T > |
| std::enable_if< detail::has_destroy_v< Alloc, T * >, void >::type | destroy (T *p) noexcept(detail::has_nothrow_destroy_v< Alloc, T * >) |
| |
| template<typename A = Alloc> |
| std::enable_if< detail::has_max_size_v< A >, size_type >::type | max_size () const noexcept(detail::has_nothrow_max_size_v< A >) |
| |
| template<typename A = Alloc> |
| std::enable_if< detail::has_owns_v< A >, bool >::type | owns (void *p) const noexcept(detail::has_nothrow_owns_v< A >) |
| |
| Alloc & | get_allocator () noexcept |
| |
| const Alloc & | get_allocator () const noexcept |
| |