// -*- 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 // //===----------------------------------------------------------------------===// export namespace std { // [concepts.lang], language-related concepts // [concept.same], concept same_as using std::same_as; // [concept.derived], concept derived_from using std::derived_from; // [concept.convertible], concept convertible_to using std::convertible_to; // [concept.commonref], concept common_reference_with using std::common_reference_with; // [concept.common], concept common_with using std::common_with; // [concepts.arithmetic], arithmetic concepts using std::floating_point; using std::integral; using std::signed_integral; using std::unsigned_integral; // [concept.assignable], concept assignable_from using std::assignable_from; // [concept.swappable], concept swappable namespace ranges { inline namespace __cpo { using std::ranges::__cpo::swap; } } // namespace ranges using std::swappable; using std::swappable_with; // [concept.destructible], concept destructible using std::destructible; // [concept.constructible], concept constructible_from using std::constructible_from; // [concept.default.init], concept default_initializable using std::default_initializable; // [concept.moveconstructible], concept move_constructible using std::move_constructible; // [concept.copyconstructible], concept copy_constructible using std::copy_constructible; // [concepts.compare], comparison concepts // [concept.equalitycomparable], concept equality_comparable using std::equality_comparable; using std::equality_comparable_with; // [concept.totallyordered], concept totally_ordered using std::totally_ordered; using std::totally_ordered_with; // [concepts.object], object concepts using std::copyable; using std::movable; using std::regular; using std::semiregular; // [concepts.callable], callable concepts // [concept.invocable], concept invocable using std::invocable; // [concept.regularinvocable], concept regular_invocable using std::regular_invocable; // [concept.predicate], concept predicate using std::predicate; // [concept.relation], concept relation using std::relation; // [concept.equiv], concept equivalence_relation using std::equivalence_relation; // [concept.strictweakorder], concept strict_weak_order using std::strict_weak_order; } // namespace std