OLD | NEW |
(Empty) | |
| 1 #ifndef _WCHAR_H |
| 2 #define _WCHAR_H |
| 3 |
| 4 #ifdef __cplusplus |
| 5 extern "C" { |
| 6 #endif |
| 7 |
| 8 #include <features.h> |
| 9 |
| 10 #define __NEED_FILE |
| 11 #define __NEED___isoc_va_list |
| 12 #define __NEED_size_t |
| 13 #define __NEED_wchar_t |
| 14 #define __NEED_wint_t |
| 15 #define __NEED_mbstate_t |
| 16 |
| 17 #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ |
| 18 || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) |
| 19 #define __NEED_locale_t |
| 20 #define __NEED_va_list |
| 21 #endif |
| 22 |
| 23 #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) |
| 24 #define __NEED_wctype_t |
| 25 #endif |
| 26 |
| 27 #include <bits/alltypes.h> |
| 28 |
| 29 #if L'\0'-1 > 0 |
| 30 #define WCHAR_MAX (0xffffffffu+L'\0') |
| 31 #define WCHAR_MIN (0+L'\0') |
| 32 #else |
| 33 #define WCHAR_MAX (0x7fffffff+L'\0') |
| 34 #define WCHAR_MIN (-1-0x7fffffff+L'\0') |
| 35 #endif |
| 36 |
| 37 #ifdef __cplusplus |
| 38 #define NULL 0L |
| 39 #else |
| 40 #define NULL ((void*)0) |
| 41 #endif |
| 42 |
| 43 #undef WEOF |
| 44 #define WEOF 0xffffffffU |
| 45 |
| 46 wchar_t *wcscpy (wchar_t *__restrict, const wchar_t *__restrict); |
| 47 wchar_t *wcsncpy (wchar_t *__restrict, const wchar_t *__restrict, size_t); |
| 48 |
| 49 wchar_t *wcscat (wchar_t *__restrict, const wchar_t *__restrict); |
| 50 wchar_t *wcsncat (wchar_t *__restrict, const wchar_t *__restrict, size_t); |
| 51 |
| 52 int wcscmp (const wchar_t *, const wchar_t *); |
| 53 int wcsncmp (const wchar_t *, const wchar_t *, size_t); |
| 54 |
| 55 int wcscoll(const wchar_t *, const wchar_t *); |
| 56 size_t wcsxfrm (wchar_t *__restrict, const wchar_t *__restrict, size_t n); |
| 57 |
| 58 wchar_t *wcschr (const wchar_t *, wchar_t); |
| 59 wchar_t *wcsrchr (const wchar_t *, wchar_t); |
| 60 |
| 61 size_t wcscspn (const wchar_t *, const wchar_t *); |
| 62 size_t wcsspn (const wchar_t *, const wchar_t *); |
| 63 wchar_t *wcspbrk (const wchar_t *, const wchar_t *); |
| 64 |
| 65 wchar_t *wcstok (wchar_t *__restrict, const wchar_t *__restrict, wchar_t **__res
trict); |
| 66 |
| 67 size_t wcslen (const wchar_t *); |
| 68 |
| 69 wchar_t *wcsstr (const wchar_t *__restrict, const wchar_t *__restrict); |
| 70 wchar_t *wcswcs (const wchar_t *, const wchar_t *); |
| 71 |
| 72 wchar_t *wmemchr (const wchar_t *, wchar_t, size_t); |
| 73 int wmemcmp (const wchar_t *, const wchar_t *, size_t); |
| 74 wchar_t *wmemcpy (wchar_t *__restrict, const wchar_t *__restrict, size_t); |
| 75 wchar_t *wmemmove (wchar_t *, const wchar_t *, size_t); |
| 76 wchar_t *wmemset (wchar_t *, wchar_t, size_t); |
| 77 |
| 78 wint_t btowc (int); |
| 79 int wctob (wint_t); |
| 80 |
| 81 int mbsinit (const mbstate_t *); |
| 82 size_t mbrtowc (wchar_t *__restrict, const char *__restrict, size_t, mbstate_t *
__restrict); |
| 83 size_t wcrtomb (char *__restrict, wchar_t, mbstate_t *__restrict); |
| 84 |
| 85 size_t mbrlen (const char *__restrict, size_t, mbstate_t *__restrict); |
| 86 |
| 87 size_t mbsrtowcs (wchar_t *__restrict, const char **__restrict, size_t, mbstate_
t *__restrict); |
| 88 size_t wcsrtombs (char *__restrict, const wchar_t **__restrict, size_t, mbstate_
t *__restrict); |
| 89 |
| 90 float wcstof (const wchar_t *__restrict, wchar_t **__restrict); |
| 91 double wcstod (const wchar_t *__restrict, wchar_t **__restrict); |
| 92 long double wcstold (const wchar_t *__restrict, wchar_t **__restrict); |
| 93 |
| 94 long wcstol (const wchar_t *__restrict, wchar_t **__restrict, int); |
| 95 unsigned long wcstoul (const wchar_t *__restrict, wchar_t **__restrict, int); |
| 96 |
| 97 long long wcstoll (const wchar_t *__restrict, wchar_t **__restrict, int); |
| 98 unsigned long long wcstoull (const wchar_t *__restrict, wchar_t **__restrict, in
t); |
| 99 |
| 100 |
| 101 |
| 102 int fwide (FILE *, int); |
| 103 |
| 104 |
| 105 int wprintf (const wchar_t *__restrict, ...); |
| 106 int fwprintf (FILE *__restrict, const wchar_t *__restrict, ...); |
| 107 int swprintf (wchar_t *__restrict, size_t, const wchar_t *__restrict, ...); |
| 108 |
| 109 int vwprintf (const wchar_t *__restrict, __isoc_va_list); |
| 110 int vfwprintf (FILE *__restrict, const wchar_t *__restrict, __isoc_va_list); |
| 111 int vswprintf (wchar_t *__restrict, size_t, const wchar_t *__restrict, __isoc_va
_list); |
| 112 |
| 113 int wscanf (const wchar_t *__restrict, ...); |
| 114 int fwscanf (FILE *__restrict, const wchar_t *__restrict, ...); |
| 115 int swscanf (const wchar_t *__restrict, const wchar_t *__restrict, ...); |
| 116 |
| 117 int vwscanf (const wchar_t *__restrict, __isoc_va_list); |
| 118 int vfwscanf (FILE *__restrict, const wchar_t *__restrict, __isoc_va_list); |
| 119 int vswscanf (const wchar_t *__restrict, const wchar_t *__restrict, __isoc_va_li
st); |
| 120 |
| 121 wint_t fgetwc (FILE *); |
| 122 wint_t getwc (FILE *); |
| 123 wint_t getwchar (void); |
| 124 |
| 125 wint_t fputwc (wchar_t, FILE *); |
| 126 wint_t putwc (wchar_t, FILE *); |
| 127 wint_t putwchar (wchar_t); |
| 128 |
| 129 wchar_t *fgetws (wchar_t *__restrict, int, FILE *__restrict); |
| 130 int fputws (const wchar_t *__restrict, FILE *__restrict); |
| 131 |
| 132 wint_t ungetwc (wint_t, FILE *); |
| 133 |
| 134 struct tm; |
| 135 size_t wcsftime (wchar_t *__restrict, size_t, const wchar_t *__restrict, const s
truct tm *__restrict); |
| 136 |
| 137 #undef iswdigit |
| 138 |
| 139 #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ |
| 140 || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) |
| 141 FILE *open_wmemstream(wchar_t **, size_t *); |
| 142 size_t mbsnrtowcs(wchar_t *__restrict, const char **__restrict, size_t, size_t,
mbstate_t *__restrict); |
| 143 size_t wcsnrtombs(char *__restrict, const wchar_t **__restrict, size_t, size_t,
mbstate_t *__restrict); |
| 144 wchar_t *wcsdup(const wchar_t *); |
| 145 size_t wcsnlen (const wchar_t *, size_t); |
| 146 wchar_t *wcpcpy (wchar_t *__restrict, const wchar_t *__restrict); |
| 147 wchar_t *wcpncpy (wchar_t *__restrict, const wchar_t *__restrict, size_t); |
| 148 int wcscasecmp(const wchar_t *, const wchar_t *); |
| 149 int wcscasecmp_l(const wchar_t *, const wchar_t *, locale_t); |
| 150 int wcsncasecmp(const wchar_t *, const wchar_t *, size_t); |
| 151 int wcsncasecmp_l(const wchar_t *, const wchar_t *, size_t, locale_t); |
| 152 int wcscoll_l(const wchar_t *, const wchar_t *, locale_t); |
| 153 size_t wcsxfrm_l(wchar_t *__restrict, const wchar_t *__restrict, size_t n, local
e_t); |
| 154 #endif |
| 155 |
| 156 #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) |
| 157 int wcwidth (wchar_t); |
| 158 int wcswidth (const wchar_t *, size_t); |
| 159 int iswalnum(wint_t); |
| 160 int iswalpha(wint_t); |
| 161 int iswblank(wint_t); |
| 162 int iswcntrl(wint_t); |
| 163 int iswdigit(wint_t); |
| 164 int iswgraph(wint_t); |
| 165 int iswlower(wint_t); |
| 166 int iswprint(wint_t); |
| 167 int iswpunct(wint_t); |
| 168 int iswspace(wint_t); |
| 169 int iswupper(wint_t); |
| 170 int iswxdigit(wint_t); |
| 171 int iswctype(wint_t, wctype_t); |
| 172 wint_t towlower(wint_t); |
| 173 wint_t towupper(wint_t); |
| 174 wctype_t wctype(const char *); |
| 175 |
| 176 #ifndef __cplusplus |
| 177 #undef iswdigit |
| 178 #define iswdigit(a) (0 ? iswdigit(a) : ((unsigned)(a)-'0') < 10) |
| 179 #endif |
| 180 #endif |
| 181 |
| 182 #ifdef __cplusplus |
| 183 } |
| 184 #endif |
| 185 |
| 186 #endif |
OLD | NEW |