50 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 // [variant.variant], class template variant12 using std::variant;13 14 // [variant.helper], variant helper classes15 using std::variant_alternative;16 using std::variant_npos;17 using std::variant_size;18 using std::variant_size_v;19 20 // [variant.get], value access21 using std::get;22 using std::get_if;23 using std::holds_alternative;24 using std::variant_alternative_t;25 26 // [variant.relops], relational operators27 using std::operator==;28 using std::operator!=;29 using std::operator<;30 using std::operator>;31 using std::operator<=;32 using std::operator>=;33 using std::operator<=>;34 35 // [variant.visit], visitation36 using std::visit;37 38 // [variant.monostate], class monostate39 using std::monostate;40 41 // [variant.specalg], specialized algorithms42 using std::swap;43 44 // [variant.bad.access], class bad_variant_access45 using std::bad_variant_access;46 47 // [variant.hash], hash support48 using std::hash;49} // namespace std50