18a4dda33SDimitry Andric// -*- C++ -*- 28a4dda33SDimitry Andric//===----------------------------------------------------------------------===// 38a4dda33SDimitry Andric// 48a4dda33SDimitry Andric// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 58a4dda33SDimitry Andric// See https://llvm.org/LICENSE.txt for license information. 68a4dda33SDimitry Andric// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 78a4dda33SDimitry Andric// 88a4dda33SDimitry Andric//===----------------------------------------------------------------------===// 98a4dda33SDimitry Andric 108a4dda33SDimitry Andric// WARNING, this entire header is generated by 118a4dda33SDimitry Andric// utils/generate_std_clang_module_header.py 128a4dda33SDimitry Andric// DO NOT MODIFY! 138a4dda33SDimitry Andric 148a4dda33SDimitry Andric// This header should not be directly included, it's exclusively to import all 158a4dda33SDimitry Andric// of the libc++ public clang modules for the `std` clang module to export. In 168a4dda33SDimitry Andric// other words, it's to facilitate `@import std;` in Objective-C++ and `import std` 178a4dda33SDimitry Andric// in Swift to expose all of the libc++ interfaces. This is generally not 188a4dda33SDimitry Andric// recommended, however there are some clients that need to import all of libc++ 198a4dda33SDimitry Andric// without knowing what "all" is. 208a4dda33SDimitry Andric#if !__building_module(std) 218a4dda33SDimitry Andric# error "Do not include this header directly, include individual headers instead" 228a4dda33SDimitry Andric#endif 238a4dda33SDimitry Andric 248a4dda33SDimitry Andric#include <__config> 258a4dda33SDimitry Andric 268a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 278a4dda33SDimitry Andric# pragma GCC system_header 288a4dda33SDimitry Andric#endif 298a4dda33SDimitry Andric 308a4dda33SDimitry Andric#include <algorithm> 318a4dda33SDimitry Andric#include <any> 328a4dda33SDimitry Andric#include <array> 338a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_ATOMIC_HEADER) 348a4dda33SDimitry Andric# include <atomic> 358a4dda33SDimitry Andric#endif 368a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_THREADS) 378a4dda33SDimitry Andric# include <barrier> 388a4dda33SDimitry Andric#endif 398a4dda33SDimitry Andric#include <bit> 408a4dda33SDimitry Andric#include <bitset> 418a4dda33SDimitry Andric#include <cassert> 428a4dda33SDimitry Andric#include <ccomplex> 438a4dda33SDimitry Andric#include <cctype> 448a4dda33SDimitry Andric#include <cerrno> 458a4dda33SDimitry Andric#include <cfenv> 468a4dda33SDimitry Andric#include <cfloat> 478a4dda33SDimitry Andric#include <charconv> 488a4dda33SDimitry Andric#include <chrono> 498a4dda33SDimitry Andric#include <cinttypes> 508a4dda33SDimitry Andric#include <ciso646> 518a4dda33SDimitry Andric#include <climits> 528a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 538a4dda33SDimitry Andric# include <clocale> 548a4dda33SDimitry Andric#endif 558a4dda33SDimitry Andric#include <cmath> 568a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 578a4dda33SDimitry Andric# include <codecvt> 588a4dda33SDimitry Andric#endif 598a4dda33SDimitry Andric#include <compare> 608a4dda33SDimitry Andric#include <complex.h> 618a4dda33SDimitry Andric#include <complex> 628a4dda33SDimitry Andric#include <concepts> 638a4dda33SDimitry Andric#include <condition_variable> 648a4dda33SDimitry Andric#include <coroutine> 658a4dda33SDimitry Andric#include <csetjmp> 668a4dda33SDimitry Andric#include <csignal> 678a4dda33SDimitry Andric#include <cstdarg> 688a4dda33SDimitry Andric#include <cstdbool> 698a4dda33SDimitry Andric#include <cstddef> 708a4dda33SDimitry Andric#include <cstdint> 718a4dda33SDimitry Andric#include <cstdio> 728a4dda33SDimitry Andric#include <cstdlib> 738a4dda33SDimitry Andric#include <cstring> 748a4dda33SDimitry Andric#include <ctgmath> 758a4dda33SDimitry Andric#include <ctime> 768a4dda33SDimitry Andric#include <ctype.h> 778a4dda33SDimitry Andric#include <cuchar> 788a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_WIDE_CHARACTERS) 798a4dda33SDimitry Andric# include <cwchar> 808a4dda33SDimitry Andric#endif 818a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_WIDE_CHARACTERS) 828a4dda33SDimitry Andric# include <cwctype> 838a4dda33SDimitry Andric#endif 848a4dda33SDimitry Andric#include <deque> 858a4dda33SDimitry Andric#include <errno.h> 868a4dda33SDimitry Andric#include <exception> 878a4dda33SDimitry Andric#include <execution> 888a4dda33SDimitry Andric#include <expected> 898a4dda33SDimitry Andric#include <experimental/iterator> 90*5f757f3fSDimitry Andric#include <experimental/memory> 918a4dda33SDimitry Andric#include <experimental/propagate_const> 928a4dda33SDimitry Andric#include <experimental/simd> 938a4dda33SDimitry Andric#include <experimental/type_traits> 948a4dda33SDimitry Andric#include <experimental/utility> 958a4dda33SDimitry Andric#include <fenv.h> 968a4dda33SDimitry Andric#include <filesystem> 978a4dda33SDimitry Andric#include <float.h> 988a4dda33SDimitry Andric#include <format> 998a4dda33SDimitry Andric#include <forward_list> 1008a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 1018a4dda33SDimitry Andric# include <fstream> 1028a4dda33SDimitry Andric#endif 1038a4dda33SDimitry Andric#include <functional> 1048a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_THREADS) 1058a4dda33SDimitry Andric# include <future> 1068a4dda33SDimitry Andric#endif 1078a4dda33SDimitry Andric#include <initializer_list> 1088a4dda33SDimitry Andric#include <inttypes.h> 1098a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 1108a4dda33SDimitry Andric# include <iomanip> 1118a4dda33SDimitry Andric#endif 1128a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 1138a4dda33SDimitry Andric# include <ios> 1148a4dda33SDimitry Andric#endif 1158a4dda33SDimitry Andric#include <iosfwd> 1168a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 1178a4dda33SDimitry Andric# include <iostream> 1188a4dda33SDimitry Andric#endif 1198a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 1208a4dda33SDimitry Andric# include <istream> 1218a4dda33SDimitry Andric#endif 1228a4dda33SDimitry Andric#include <iterator> 1238a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_THREADS) 1248a4dda33SDimitry Andric# include <latch> 1258a4dda33SDimitry Andric#endif 1268a4dda33SDimitry Andric#include <limits> 1278a4dda33SDimitry Andric#include <list> 1288a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 1298a4dda33SDimitry Andric# include <locale.h> 1308a4dda33SDimitry Andric#endif 1318a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 1328a4dda33SDimitry Andric# include <locale> 1338a4dda33SDimitry Andric#endif 1348a4dda33SDimitry Andric#include <map> 1358a4dda33SDimitry Andric#include <math.h> 1368a4dda33SDimitry Andric#include <mdspan> 1378a4dda33SDimitry Andric#include <memory> 1388a4dda33SDimitry Andric#include <memory_resource> 1398a4dda33SDimitry Andric#include <mutex> 1408a4dda33SDimitry Andric#include <new> 1418a4dda33SDimitry Andric#include <numbers> 1428a4dda33SDimitry Andric#include <numeric> 1438a4dda33SDimitry Andric#include <optional> 1448a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 1458a4dda33SDimitry Andric# include <ostream> 1468a4dda33SDimitry Andric#endif 1478a4dda33SDimitry Andric#include <print> 1488a4dda33SDimitry Andric#include <queue> 1498a4dda33SDimitry Andric#include <random> 1508a4dda33SDimitry Andric#include <ranges> 1518a4dda33SDimitry Andric#include <ratio> 1528a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 1538a4dda33SDimitry Andric# include <regex> 1548a4dda33SDimitry Andric#endif 1558a4dda33SDimitry Andric#include <scoped_allocator> 1568a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_THREADS) 1578a4dda33SDimitry Andric# include <semaphore> 1588a4dda33SDimitry Andric#endif 1598a4dda33SDimitry Andric#include <set> 1608a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_THREADS) 1618a4dda33SDimitry Andric# include <shared_mutex> 1628a4dda33SDimitry Andric#endif 1638a4dda33SDimitry Andric#include <source_location> 1648a4dda33SDimitry Andric#include <span> 1658a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 1668a4dda33SDimitry Andric# include <sstream> 1678a4dda33SDimitry Andric#endif 1688a4dda33SDimitry Andric#include <stack> 1698a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_ATOMIC_HEADER) 1708a4dda33SDimitry Andric# include <stdatomic.h> 1718a4dda33SDimitry Andric#endif 1728a4dda33SDimitry Andric#include <stdbool.h> 1738a4dda33SDimitry Andric#include <stddef.h> 1748a4dda33SDimitry Andric#include <stdexcept> 1758a4dda33SDimitry Andric#include <stdint.h> 1768a4dda33SDimitry Andric#include <stdio.h> 1778a4dda33SDimitry Andric#include <stdlib.h> 1788a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_THREADS) 1798a4dda33SDimitry Andric# include <stop_token> 1808a4dda33SDimitry Andric#endif 1818a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 1828a4dda33SDimitry Andric# include <streambuf> 1838a4dda33SDimitry Andric#endif 1848a4dda33SDimitry Andric#include <string.h> 1858a4dda33SDimitry Andric#include <string> 1868a4dda33SDimitry Andric#include <string_view> 1878a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 1888a4dda33SDimitry Andric# include <strstream> 1898a4dda33SDimitry Andric#endif 190*5f757f3fSDimitry Andric#if !defined(_LIBCPP_HAS_NO_LOCALIZATION) 191*5f757f3fSDimitry Andric# include <syncstream> 192*5f757f3fSDimitry Andric#endif 1938a4dda33SDimitry Andric#include <system_error> 1948a4dda33SDimitry Andric#include <tgmath.h> 1958a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_THREADS) 1968a4dda33SDimitry Andric# include <thread> 1978a4dda33SDimitry Andric#endif 1988a4dda33SDimitry Andric#include <tuple> 1998a4dda33SDimitry Andric#include <type_traits> 2008a4dda33SDimitry Andric#include <typeindex> 2018a4dda33SDimitry Andric#include <typeinfo> 2028a4dda33SDimitry Andric#include <uchar.h> 2038a4dda33SDimitry Andric#include <unordered_map> 2048a4dda33SDimitry Andric#include <unordered_set> 2058a4dda33SDimitry Andric#include <utility> 2068a4dda33SDimitry Andric#include <valarray> 2078a4dda33SDimitry Andric#include <variant> 2088a4dda33SDimitry Andric#include <vector> 2098a4dda33SDimitry Andric#include <version> 2108a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_WIDE_CHARACTERS) 2118a4dda33SDimitry Andric# include <wchar.h> 2128a4dda33SDimitry Andric#endif 2138a4dda33SDimitry Andric#if !defined(_LIBCPP_HAS_NO_WIDE_CHARACTERS) 2148a4dda33SDimitry Andric# include <wctype.h> 2158a4dda33SDimitry Andric#endif 216