11 #ifndef ASIO_DETAIL_MEMORY_HPP 12 #define ASIO_DETAIL_MEMORY_HPP 14 #if defined(_MSC_VER) && (_MSC_VER >= 1200) 16 #endif // defined(_MSC_VER) && (_MSC_VER >= 1200) 18 #include "asio/detail/config.hpp" 21 #if !defined(ASIO_HAS_STD_SHARED_PTR) 22 # include <boost/make_shared.hpp> 23 # include <boost/shared_ptr.hpp> 24 # include <boost/weak_ptr.hpp> 25 #endif // !defined(ASIO_HAS_STD_SHARED_PTR) 27 #if !defined(ASIO_HAS_STD_ADDRESSOF) 28 # include <boost/utility/addressof.hpp> 29 #endif // !defined(ASIO_HAS_STD_ADDRESSOF) 34 #if defined(ASIO_HAS_STD_SHARED_PTR) 35 using std::make_shared;
36 using std::shared_ptr;
38 #else // defined(ASIO_HAS_STD_SHARED_PTR) 39 using boost::make_shared;
40 using boost::shared_ptr;
41 using boost::weak_ptr;
42 #endif // defined(ASIO_HAS_STD_SHARED_PTR) 44 #if defined(ASIO_HAS_STD_ADDRESSOF) 46 #else // defined(ASIO_HAS_STD_ADDRESSOF) 47 using boost::addressof;
48 #endif // defined(ASIO_HAS_STD_ADDRESSOF) 52 #if defined(ASIO_HAS_CXX11_ALLOCATORS) 53 using std::allocator_arg_t;
54 # define ASIO_USES_ALLOCATOR(t) \ 56 template <typename Allocator> \ 57 struct uses_allocator<t, Allocator> : true_type {}; \ 60 # define ASIO_REBIND_ALLOC(alloc, t) \ 61 typename std::allocator_traits<alloc>::template rebind_alloc<t> 63 #else // defined(ASIO_HAS_CXX11_ALLOCATORS) 65 # define ASIO_USES_ALLOCATOR(t) 66 # define ASIO_REBIND_ALLOC(alloc, t) \ 67 typename alloc::template rebind<t>::other 69 #endif // defined(ASIO_HAS_CXX11_ALLOCATORS) 73 #endif // ASIO_DETAIL_MEMORY_HPP
Definition: memory.hpp:64
Definition: any_io_executor.hpp:28