48 lines · plain
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-exception7//8//===----------------------------------------------------------------------===//9 10export namespace std {11 // [optional.optional], class template optional12 using std::optional;13#if _LIBCPP_STD_VER >= 2614 // [optional.iterators], iterator support15 namespace ranges {16 using std::ranges::enable_borrowed_range;17 using std::ranges::enable_view;18 } // namespace ranges19#endif20 // [optional.nullopt], no-value state indicator21 using std::nullopt;22 using std::nullopt_t;23 24 // [optional.bad.access], class bad_optional_access25 using std::bad_optional_access;26 27#if _LIBCPP_STD_VER >= 2628 using std::format_kind;29#endif30 31 // [optional.relops], relational operators32 using std::operator==;33 using std::operator!=;34 using std::operator<;35 using std::operator>;36 using std::operator<=;37 using std::operator>=;38 using std::operator<=>;39 40 // [optional.specalg], specialized algorithms41 using std::swap;42 43 using std::make_optional;44 45 // [optional.hash], hash support46 using std::hash;47} // namespace std48