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 10export namespace std { 11#ifndef _LIBCPP_HAS_NO_THREADS 12 using std::future_errc; 13 using std::future_status; 14 using std::launch; 15 16 // launch is a bitmask type. 17 // [bitmask.types] specified operators 18 using std::operator&; 19 using std::operator&=; 20 using std::operator^; 21 using std::operator^=; 22 using std::operator|; 23 using std::operator|=; 24 using std::operator~; 25 26 // [futures.errors], error handling 27 using std::is_error_code_enum; 28 using std::make_error_code; 29 using std::make_error_condition; 30 31 using std::future_category; 32 33 // [futures.future.error], class future_error 34 using std::future_error; 35 36 // [futures.promise], class template promise 37 using std::promise; 38 39 using std::swap; 40 41 using std::uses_allocator; 42 43 // [futures.unique.future], class template future 44 using std::future; 45 46 // [futures.shared.future], class template shared_future 47 using std::shared_future; 48 49 // [futures.task], class template packaged_task 50 using std::packaged_task; 51 52 // [futures.async], function template async 53 using std::async; 54#endif // _LIBCPP_HAS_NO_THREADS 55} // namespace std 56