diff options
Diffstat (limited to 'libcxx/include/memory_resource')
| -rw-r--r-- | libcxx/include/memory_resource | 65 | 
1 files changed, 65 insertions, 0 deletions
| diff --git a/libcxx/include/memory_resource b/libcxx/include/memory_resource new file mode 100644 index 000000000000..4b393433696f --- /dev/null +++ b/libcxx/include/memory_resource @@ -0,0 +1,65 @@ +// -*- C++ -*- +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +#ifndef _LIBCPP_MEMORY_RESOURCE +#define _LIBCPP_MEMORY_RESOURCE + +/** +    memory_resource synopsis + +// C++17 + +namespace std::pmr { + +  class memory_resource; + +  bool operator==(const memory_resource& a, +                  const memory_resource& b) noexcept; +  bool operator!=(const memory_resource& a, +                  const memory_resource& b) noexcept; + +  template <class Tp> class polymorphic_allocator; + +  template <class T1, class T2> +  bool operator==(const polymorphic_allocator<T1>& a, +                  const polymorphic_allocator<T2>& b) noexcept; +  template <class T1, class T2> +  bool operator!=(const polymorphic_allocator<T1>& a, +                  const polymorphic_allocator<T2>& b) noexcept; + +  // Global memory resources +  memory_resource* set_default_resource(memory_resource* r) noexcept; +  memory_resource* get_default_resource() noexcept; +  memory_resource* new_delete_resource() noexcept; +  memory_resource* null_memory_resource() noexcept; + +  // Pool resource classes +  struct pool_options; +  class synchronized_pool_resource; +  class unsynchronized_pool_resource; +  class monotonic_buffer_resource; + +} // namespace std::pmr + + */ + +#include <__config> +#include <__memory_resource/memory_resource.h> +#include <__memory_resource/monotonic_buffer_resource.h> +#include <__memory_resource/polymorphic_allocator.h> +#include <__memory_resource/pool_options.h> +#include <__memory_resource/synchronized_pool_resource.h> +#include <__memory_resource/unsynchronized_pool_resource.h> +#include <version> + +#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) +#  pragma GCC system_header +#endif + +#endif /* _LIBCPP_MEMORY_RESOURCE */ | 
