Update.
[glibc.git] / include / wchar.h
blobc5bdf4d2224591d9e5abcae748549f15806165c5
1 #ifndef _WCHAR_H
2 #include <wcsmbs/wchar.h>
4 # ifdef _WCHAR_H
5 /* Now define the internal interfaces. */
6 extern int __wcscasecmp (__const wchar_t *__s1, __const wchar_t *__s2)
7 __attribute_pure__;
8 extern int __wcsncasecmp (__const wchar_t *__s1, __const wchar_t *__s2,
9 size_t __n)
10 __attribute_pure__;
11 extern int __wcscoll (__const wchar_t *__s1, __const wchar_t *__s2);
12 extern size_t __wcslen (__const wchar_t *__s) __attribute_pure__;
13 extern size_t __wcsnlen (__const wchar_t *__s, size_t __maxlen)
14 __attribute_pure__;
15 extern wchar_t *__wcscat (wchar_t *dest, const wchar_t *src);
16 extern wint_t __btowc (int __c);
17 extern int __mbsinit (__const __mbstate_t *__ps);
18 extern size_t __mbrtowc (wchar_t *__restrict __pwc,
19 __const char *__restrict __s, size_t __n,
20 __mbstate_t *__restrict __p);
21 extern size_t __mbrtowc_internal (wchar_t *__restrict __pwc,
22 __const char *__restrict __s, size_t __n,
23 __mbstate_t *__restrict __p)
24 attribute_hidden;
25 extern size_t __mbrlen_internal (__const char *__restrict __s, size_t __n,
26 mbstate_t *__restrict __ps) attribute_hidden;
27 extern size_t __wcrtomb (char *__restrict __s, wchar_t __wc,
28 __mbstate_t *__restrict __ps);
29 extern size_t __mbsrtowcs (wchar_t *__restrict __dst,
30 __const char **__restrict __src,
31 size_t __len, __mbstate_t *__restrict __ps);
32 extern size_t __wcsrtombs (char *__restrict __dst,
33 __const wchar_t **__restrict __src,
34 size_t __len, __mbstate_t *__restrict __ps);
35 extern size_t __mbsnrtowcs (wchar_t *__restrict __dst,
36 __const char **__restrict __src, size_t __nmc,
37 size_t __len, __mbstate_t *__restrict __ps);
38 extern size_t __wcsnrtombs (char *__restrict __dst,
39 __const wchar_t **__restrict __src,
40 size_t __nwc, size_t __len,
41 __mbstate_t *__restrict __ps);
42 extern wchar_t *__wcpcpy (wchar_t *__dest, __const wchar_t *__src);
43 extern wchar_t *__wcpncpy (wchar_t *__dest, __const wchar_t *__src,
44 size_t __n);
45 extern wchar_t *__wmemcpy (wchar_t *__s1, __const wchar_t *s2,
46 size_t __n);
47 extern wchar_t *__wmempcpy (wchar_t *__restrict __s1,
48 __const wchar_t *__restrict __s2,
49 size_t __n);
50 extern wchar_t *__wmemmove (wchar_t *__s1, __const wchar_t *__s2,
51 size_t __n);
52 extern wchar_t *__wcschrnul (__const wchar_t *__s, wchar_t __wc)
53 __attribute_pure__;
55 extern int __vfwscanf (__FILE *__restrict __s,
56 __const wchar_t *__restrict __format,
57 __gnuc_va_list __arg)
58 /* __attribute__ ((__format__ (__wscanf__, 2, 0)) */;
59 extern int __vswprintf (wchar_t *__restrict __s, size_t __n,
60 __const wchar_t *__restrict __format,
61 __gnuc_va_list __arg)
62 /* __attribute__ ((__format__ (__wprintf__, 3, 0))) */;
63 extern int __fwprintf (__FILE *__restrict __s,
64 __const wchar_t *__restrict __format, ...)
65 /* __attribute__ ((__format__ (__wprintf__, 3, 0))) */;
66 extern int __vfwprintf (__FILE *__restrict __s,
67 __const wchar_t *__restrict __format,
68 __gnuc_va_list __arg)
69 /* __attribute__ ((__format__ (__wprintf__, 3, 0))) */;
71 # ifndef NOT_IN_libc
72 # define __mbrlen(s, n, ps) INTUSE(__mbrlen) (s, n, ps)
73 # define __mbrtowc(pwc, s, n, p) INTUSE(__mbrtowc) (pwc, s, n, p)
74 # endif
76 # endif
77 #endif