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 10#ifndef _LIBCPP_CCTYPE 11#define _LIBCPP_CCTYPE 12 13/* 14 cctype synopsis 15 16namespace std 17{ 18 19int isalnum(int c); 20int isalpha(int c); 21int isblank(int c); // C99 22int iscntrl(int c); 23int isdigit(int c); 24int isgraph(int c); 25int islower(int c); 26int isprint(int c); 27int ispunct(int c); 28int isspace(int c); 29int isupper(int c); 30int isxdigit(int c); 31int tolower(int c); 32int toupper(int c); 33 34} // std 35*/ 36 37#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS) 38# include <__cxx03/cctype> 39#else 40# include <__config> 41 42# include <ctype.h> 43 44# ifndef _LIBCPP_CTYPE_H 45# error <cctype> tried including <ctype.h> but didn't find libc++'s <ctype.h> header. \ 46 This usually means that your header search paths are not configured properly. \ 47 The header search paths should contain the C++ Standard Library headers before \ 48 any C Standard Library. 49# endif 50 51# if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 52# pragma GCC system_header 53# endif 54 55_LIBCPP_BEGIN_NAMESPACE_STD 56 57# ifdef isalnum 58# undef isalnum 59# endif 60 61# ifdef isalpha 62# undef isalpha 63# endif 64 65# ifdef isblank 66# undef isblank 67# endif 68 69# ifdef iscntrl 70# undef iscntrl 71# endif 72 73# ifdef isdigit 74# undef isdigit 75# endif 76 77# ifdef isgraph 78# undef isgraph 79# endif 80 81# ifdef islower 82# undef islower 83# endif 84 85# ifdef isprint 86# undef isprint 87# endif 88 89# ifdef ispunct 90# undef ispunct 91# endif 92 93# ifdef isspace 94# undef isspace 95# endif 96 97# ifdef isupper 98# undef isupper 99# endif 100 101# ifdef isxdigit 102# undef isxdigit 103# endif 104 105# ifdef tolower 106# undef tolower 107# endif 108 109# ifdef toupper 110# undef toupper 111# endif 112 113using ::isalnum _LIBCPP_USING_IF_EXISTS; 114using ::isalpha _LIBCPP_USING_IF_EXISTS; 115using ::isblank _LIBCPP_USING_IF_EXISTS; 116using ::iscntrl _LIBCPP_USING_IF_EXISTS; 117using ::isdigit _LIBCPP_USING_IF_EXISTS; 118using ::isgraph _LIBCPP_USING_IF_EXISTS; 119using ::islower _LIBCPP_USING_IF_EXISTS; 120using ::isprint _LIBCPP_USING_IF_EXISTS; 121using ::ispunct _LIBCPP_USING_IF_EXISTS; 122using ::isspace _LIBCPP_USING_IF_EXISTS; 123using ::isupper _LIBCPP_USING_IF_EXISTS; 124using ::isxdigit _LIBCPP_USING_IF_EXISTS; 125using ::tolower _LIBCPP_USING_IF_EXISTS; 126using ::toupper _LIBCPP_USING_IF_EXISTS; 127 128_LIBCPP_END_NAMESPACE_STD 129#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS) 130 131#endif // _LIBCPP_CCTYPE 132