1// -*- C++ -*- 2//===----------------------------------------------------------------------===// 3// 4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 5// See https://llvm.org/LICENSE.txt for license information. 6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7// 8//===----------------------------------------------------------------------===// 9 10#ifndef _LIBCPP_EXPERIMENTAL_UNORDERED_SET 11#define _LIBCPP_EXPERIMENTAL_UNORDERED_SET 12 13/* 14 experimental/unordered_set synopsis 15 16// C++1z 17namespace std { 18namespace experimental { 19inline namespace fundamentals_v1 { 20namespace pmr { 21 22 template <class T, class Hash = hash<T>, class Pred = equal_to<T>> 23 using unordered_set = std::unordered_set<T, Hash, Pred, 24 polymorphic_allocator<T>>; 25 26 template <class T, class Hash = hash<T>, class Pred = equal_to<T>> 27 using unordered_multiset = std::unordered_multiset<T, Hash, Pred, 28 polymorphic_allocator<T>>; 29 30} // namespace pmr 31} // namespace fundamentals_v1 32} // namespace experimental 33} // namespace std 34 35 */ 36 37#include <__assert> // all public C++ headers provide the assertion handler 38#include <experimental/__config> 39#include <experimental/memory_resource> 40#include <unordered_set> 41 42#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 43# pragma GCC system_header 44#endif 45 46_LIBCPP_BEGIN_NAMESPACE_LFTS_PMR 47 48#ifndef _LIBCPP_CXX03_LANG 49 50template <class _Value, 51 class _Hash = hash<_Value>, class _Pred = equal_to<_Value>> 52using unordered_set = _VSTD::unordered_set<_Value, _Hash, _Pred, 53 polymorphic_allocator<_Value>>; 54 55template <class _Value, 56 class _Hash = hash<_Value>, class _Pred = equal_to<_Value>> 57using unordered_multiset = _VSTD::unordered_multiset<_Value, _Hash, _Pred, 58 polymorphic_allocator<_Value>>; 59 60#endif // _LIBCPP_CXX03_LANG 61 62_LIBCPP_END_NAMESPACE_LFTS_PMR 63 64#endif /* _LIBCPP_EXPERIMENTAL_UNORDERED_SET */ 65