2002-08-05 Roland McGrath <roland@redhat.com>
[kopensolaris-gnu/glibc.git] / include / wchar.h
1 #ifndef _WCHAR_H
2 #include <wcsmbs/wchar.h>
3
4 # ifdef _WCHAR_H
5
6 libc_hidden_proto (__wcstof_internal)
7 libc_hidden_proto (__wcstod_internal)
8 libc_hidden_proto (__wcstold_internal)
9 libc_hidden_proto (__wcstol_internal)
10 libc_hidden_proto (__wcstoll_internal)
11 libc_hidden_proto (__wcstoul_internal)
12 libc_hidden_proto (__wcstoull_internal)
13
14 libc_hidden_proto (__wcscasecmp_l)
15 libc_hidden_proto (__wcsncasecmp_l)
16
17 libc_hidden_proto (fputws_unlocked)
18 libc_hidden_proto (putwc_unlocked)
19
20 libc_hidden_proto (vswscanf)
21
22 libc_hidden_proto (mbrtowc)
23 libc_hidden_proto (wcrtomb)
24 libc_hidden_proto (wcscmp)
25 libc_hidden_proto (wcsftime)
26 libc_hidden_proto (wcsspn)
27 libc_hidden_proto (wcschr)
28 libc_hidden_proto (wcscoll)
29 libc_hidden_proto (wcspbrk)
30
31 libc_hidden_proto (wmemchr)
32 libc_hidden_proto (wmemset)
33
34 /* Now define the internal interfaces.  */
35 extern int __wcscasecmp (__const wchar_t *__s1, __const wchar_t *__s2)
36      __attribute_pure__;
37 extern int __wcsncasecmp (__const wchar_t *__s1, __const wchar_t *__s2,
38                           size_t __n)
39      __attribute_pure__;
40 extern int __wcscoll (__const wchar_t *__s1, __const wchar_t *__s2);
41 extern size_t __wcslen (__const wchar_t *__s) __attribute_pure__;
42 extern size_t __wcsnlen (__const wchar_t *__s, size_t __maxlen)
43      __attribute_pure__;
44 extern wchar_t *__wcscat (wchar_t *dest, const wchar_t *src);
45 extern wint_t __btowc (int __c);
46 extern int __mbsinit (__const __mbstate_t *__ps);
47 extern size_t __mbrtowc (wchar_t *__restrict __pwc,
48                          __const char *__restrict __s, size_t __n,
49                          __mbstate_t *__restrict __p);
50 libc_hidden_proto (__mbrtowc)
51 libc_hidden_proto (__mbrlen)
52 extern size_t __wcrtomb (char *__restrict __s, wchar_t __wc,
53                          __mbstate_t *__restrict __ps);
54 extern size_t __mbsrtowcs (wchar_t *__restrict __dst,
55                            __const char **__restrict __src,
56                            size_t __len, __mbstate_t *__restrict __ps);
57 extern size_t __wcsrtombs (char *__restrict __dst,
58                            __const wchar_t **__restrict __src,
59                            size_t __len, __mbstate_t *__restrict __ps);
60 extern size_t __mbsnrtowcs (wchar_t *__restrict __dst,
61                             __const char **__restrict __src, size_t __nmc,
62                             size_t __len, __mbstate_t *__restrict __ps);
63 extern size_t __wcsnrtombs (char *__restrict __dst,
64                             __const wchar_t **__restrict __src,
65                             size_t __nwc, size_t __len,
66                             __mbstate_t *__restrict __ps);
67 extern wchar_t *__wcpcpy (wchar_t *__dest, __const wchar_t *__src);
68 extern wchar_t *__wcpncpy (wchar_t *__dest, __const wchar_t *__src,
69                            size_t __n);
70 extern wchar_t *__wmemcpy (wchar_t *__s1, __const wchar_t *s2,
71                            size_t __n);
72 extern wchar_t *__wmempcpy (wchar_t *__restrict __s1,
73                             __const wchar_t *__restrict __s2,
74                             size_t __n);
75 extern wchar_t *__wmemmove (wchar_t *__s1, __const wchar_t *__s2,
76                             size_t __n);
77 extern wchar_t *__wcschrnul (__const wchar_t *__s, wchar_t __wc)
78      __attribute_pure__;
79
80 extern int __vfwscanf (__FILE *__restrict __s,
81                        __const wchar_t *__restrict __format,
82                        __gnuc_va_list __arg)
83      /* __attribute__ ((__format__ (__wscanf__, 2, 0)) */;
84 extern int __vswprintf (wchar_t *__restrict __s, size_t __n,
85                         __const wchar_t *__restrict __format,
86                         __gnuc_va_list __arg)
87      /* __attribute__ ((__format__ (__wprintf__, 3, 0))) */;
88 extern int __fwprintf (__FILE *__restrict __s,
89                        __const wchar_t *__restrict __format, ...)
90      /* __attribute__ ((__format__ (__wprintf__, 3, 0))) */;
91 extern int __vfwprintf (__FILE *__restrict __s,
92                         __const wchar_t *__restrict __format,
93                         __gnuc_va_list __arg)
94      /* __attribute__ ((__format__ (__wprintf__, 3, 0))) */;
95
96 # endif
97 #endif