[IRBuilder] Refactor FMF interface (#121657)
[llvm-project.git] / libcxx / include / cwctype
blobb7f9cbb835e3282c2ef77b79c4d9efb367121220
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 //===----------------------------------------------------------------------===//
10 #ifndef _LIBCPP_CWCTYPE
11 #define _LIBCPP_CWCTYPE
14     cwctype synopsis
16 Macros:
18     WEOF
20 namespace std
23 Types:
25     wint_t
26     wctrans_t
27     wctype_t
29 int iswalnum(wint_t wc);
30 int iswalpha(wint_t wc);
31 int iswblank(wint_t wc);  // C99
32 int iswcntrl(wint_t wc);
33 int iswdigit(wint_t wc);
34 int iswgraph(wint_t wc);
35 int iswlower(wint_t wc);
36 int iswprint(wint_t wc);
37 int iswpunct(wint_t wc);
38 int iswspace(wint_t wc);
39 int iswupper(wint_t wc);
40 int iswxdigit(wint_t wc);
41 int iswctype(wint_t wc, wctype_t desc);
42 wctype_t wctype(const char* property);
43 wint_t towlower(wint_t wc);
44 wint_t towupper(wint_t wc);
45 wint_t towctrans(wint_t wc, wctrans_t desc);
46 wctrans_t wctrans(const char* property);
48 }  // std
52 #if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
53 #  include <__cxx03/cwctype>
54 #else
55 #  include <__config>
56 #  include <cctype>
58 #  include <wctype.h>
60 #  ifndef _LIBCPP_WCTYPE_H
61 #   error <cwctype> tried including <wctype.h> but didn't find libc++'s <wctype.h> header. \
62           This usually means that your header search paths are not configured properly. \
63           The header search paths should contain the C++ Standard Library headers before \
64           any C Standard Library, and you are probably using compiler flags that make that \
65           not be the case.
66 #  endif
68 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
69 #    pragma GCC system_header
70 #  endif
72 _LIBCPP_BEGIN_NAMESPACE_STD
74 #  if defined(_LIBCPP_INCLUDED_C_LIBRARY_WCTYPE_H)
75 using ::wint_t _LIBCPP_USING_IF_EXISTS;
76 using ::wctrans_t _LIBCPP_USING_IF_EXISTS;
77 using ::wctype_t _LIBCPP_USING_IF_EXISTS;
78 using ::iswalnum _LIBCPP_USING_IF_EXISTS;
79 using ::iswalpha _LIBCPP_USING_IF_EXISTS;
80 using ::iswblank _LIBCPP_USING_IF_EXISTS;
81 using ::iswcntrl _LIBCPP_USING_IF_EXISTS;
82 using ::iswdigit _LIBCPP_USING_IF_EXISTS;
83 using ::iswgraph _LIBCPP_USING_IF_EXISTS;
84 using ::iswlower _LIBCPP_USING_IF_EXISTS;
85 using ::iswprint _LIBCPP_USING_IF_EXISTS;
86 using ::iswpunct _LIBCPP_USING_IF_EXISTS;
87 using ::iswspace _LIBCPP_USING_IF_EXISTS;
88 using ::iswupper _LIBCPP_USING_IF_EXISTS;
89 using ::iswxdigit _LIBCPP_USING_IF_EXISTS;
90 using ::iswctype _LIBCPP_USING_IF_EXISTS;
91 using ::wctype _LIBCPP_USING_IF_EXISTS;
92 using ::towlower _LIBCPP_USING_IF_EXISTS;
93 using ::towupper _LIBCPP_USING_IF_EXISTS;
94 using ::towctrans _LIBCPP_USING_IF_EXISTS;
95 using ::wctrans _LIBCPP_USING_IF_EXISTS;
96 #  endif // _LIBCPP_INCLUDED_C_LIBRARY_WCTYPE_H
98 _LIBCPP_END_NAMESPACE_STD
100 #endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
102 #endif // _LIBCPP_CWCTYPE