xref: /haiku/src/system/libroot/posix/glibc/include/wchar.h (revision 1deede7388b04dbeec5af85cae7164735ea9e70d)
1 #ifndef _WCHAR_H
2 #include <wcsmbs/wchar.h>
3 
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 __wcrtomb (char *__restrict __s, wchar_t __wc,
22 			 __mbstate_t *__restrict __ps);
23 extern size_t __mbsrtowcs (wchar_t *__restrict __dst,
24 			   __const char **__restrict __src,
25 			   size_t __len, __mbstate_t *__restrict __ps);
26 extern size_t __wcsrtombs (char *__restrict __dst,
27 			   __const wchar_t **__restrict __src,
28 			   size_t __len, __mbstate_t *__restrict __ps);
29 extern size_t __mbsnrtowcs (wchar_t *__restrict __dst,
30 			    __const char **__restrict __src, size_t __nmc,
31 			    size_t __len, __mbstate_t *__restrict __ps);
32 extern size_t __wcsnrtombs (char *__restrict __dst,
33 			    __const wchar_t **__restrict __src,
34 			    size_t __nwc, size_t __len,
35 			    __mbstate_t *__restrict __ps);
36 extern wchar_t *__wcpcpy (wchar_t *__dest, __const wchar_t *__src);
37 extern wchar_t *__wcpncpy (wchar_t *__dest, __const wchar_t *__src,
38 			   size_t __n);
39 extern wchar_t *__wmemcpy (wchar_t *__s1, __const wchar_t *s2,
40 			   size_t __n);
41 extern wchar_t *__wmempcpy (wchar_t *__restrict __s1,
42 			    __const wchar_t *__restrict __s2,
43 			    size_t __n);
44 extern wchar_t *__wmemmove (wchar_t *__s1, __const wchar_t *__s2,
45 			    size_t __n);
46 extern wchar_t *__wcschrnul (__const wchar_t *__s, wchar_t __wc)
47      __attribute_pure__;
48 
49 extern int __vfwscanf (__FILE *__restrict __s,
50 		       __const wchar_t *__restrict __format,
51 		       __gnuc_va_list __arg)
52      /* __attribute__ ((__format__ (__wscanf__, 2, 0)) */;
53 extern int __vswprintf (wchar_t *__restrict __s, size_t __n,
54 			__const wchar_t *__restrict __format,
55 			__gnuc_va_list __arg)
56      /* __attribute__ ((__format__ (__wprintf__, 3, 0))) */;
57 extern int __fwprintf (__FILE *__restrict __s,
58 		       __const wchar_t *__restrict __format, ...)
59      /* __attribute__ ((__format__ (__wprintf__, 3, 0))) */;
60 extern int __vfwprintf (__FILE *__restrict __s,
61 			__const wchar_t *__restrict __format,
62 			__gnuc_va_list __arg)
63      /* __attribute__ ((__format__ (__wprintf__, 3, 0))) */;
64 
65 # endif
66 #endif
67