100 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 // [utility.swap], swap12 using std::swap;13 14 // [utility.exchange], exchange15 using std::exchange;16 17 // [forward], forward/move18 using std::forward;19#if _LIBCPP_STD_VER >= 2320 using std::forward_like;21#endif22 using std::move;23 using std::move_if_noexcept;24 25 // [utility.as.const], as_const26 using std::as_const;27 28 // [declval], declval29 using std::declval;30 31 // [utility.intcmp], integer comparison functions32 using std::cmp_equal;33 using std::cmp_not_equal;34 35 using std::cmp_greater;36 using std::cmp_greater_equal;37 using std::cmp_less;38 using std::cmp_less_equal;39 40 using std::in_range;41 42#if _LIBCPP_STD_VER >= 2343 // [utility.underlying], to_underlying44 using std::to_underlying;45 46 // [utility.unreachable], unreachable47 using std::unreachable;48#endif // _LIBCPP_STD_VER >= 2349 50 // [intseq], compile-time integer sequences51 using std::index_sequence;52 using std::integer_sequence;53 54 using std::make_index_sequence;55 using std::make_integer_sequence;56 57 using std::index_sequence_for;58 59 // [pairs], class template pair60 using std::pair;61 62#if _LIBCPP_STD_VER >= 2363 using std::basic_common_reference;64 using std::common_type;65#endif66 // [pairs.spec], pair specialized algorithms67 using std::operator==;68 using std::operator<=>;69 70 using std::make_pair;71 72 // [pair.astuple], tuple-like access to pair73 using std::tuple_element;74 using std::tuple_size;75 76 using std::get;77 78 // [pair.piecewise], pair piecewise construction79 using std::piecewise_construct;80 using std::piecewise_construct_t;81 82 // in-place construction83 using std::in_place;84 using std::in_place_t;85 86 using std::in_place_type;87 using std::in_place_type_t;88 89 using std::in_place_index;90 using std::in_place_index_t;91 92 // [depr.relops]93 namespace rel_ops {94 using rel_ops::operator!=;95 using rel_ops::operator>;96 using rel_ops::operator<=;97 using rel_ops::operator>=;98 } // namespace rel_ops99} // namespace std100