103 #ifdef __cplusplus
104 extern "C" {
105 #endif
106
107 #if !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE) || defined(__EXTENSIONS__)
108 #if !defined(_WCTYPE_T) || __cplusplus >= 199711L
109 #define _WCTYPE_T
110 typedef int wctype_t;
111 #endif
112 #endif /* !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE)... */
113
114 /*
115 * XPG6 requires that va_list be defined as defined in <stdarg.h>,
116 * however, inclusion of <stdarg.h> breaks Standard C namespace.
117 */
118 #if defined(_XPG6) && !defined(_VA_LIST)
119 #define _VA_LIST
120 typedef __va_list va_list;
121 #endif /* defined(_XPG6) && !defined(_VA_LIST) */
122
123 #ifdef __STDC__
124
125 #if !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE) || defined(__EXTENSIONS__)
126 #if __cplusplus >= 199711L
127 namespace std {
128 #endif
129 extern int iswalpha(wint_t);
130 extern int iswupper(wint_t);
131 extern int iswlower(wint_t);
132 extern int iswdigit(wint_t);
133 extern int iswxdigit(wint_t);
134 extern int iswalnum(wint_t);
135 extern int iswspace(wint_t);
136 extern int iswpunct(wint_t);
137 extern int iswprint(wint_t);
138 extern int iswgraph(wint_t);
139 extern int iswcntrl(wint_t);
140 extern int iswctype(wint_t, wctype_t);
141 extern wint_t towlower(wint_t);
142 extern wint_t towupper(wint_t);
143 extern wchar_t *wcswcs(const wchar_t *, const wchar_t *);
144 extern int wcswidth(const wchar_t *, size_t);
145 extern int wcwidth(wchar_t);
146 extern wctype_t wctype(const char *);
147 #if __cplusplus >= 199711L
148 } /* namespace std */
149
150 using std::iswalpha;
151 using std::iswupper;
152 using std::iswlower;
153 using std::iswdigit;
154 using std::iswxdigit;
155 using std::iswalnum;
156 using std::iswspace;
157 using std::iswpunct;
158 using std::iswprint;
159 using std::iswgraph;
160 using std::iswcntrl;
161 using std::iswctype;
162 using std::towlower;
163 using std::towupper;
164 using std::wcswcs;
165 using std::wcswidth;
166 using std::wcwidth;
167 using std::wctype;
168 #endif
169 #endif /* !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE)... */
170
171 #if defined(_XPG7) || !defined(_STRICT_SYMBOLS)
172
173 #ifndef _LOCALE_T
174 #define _LOCALE_T
175 typedef struct _locale *locale_t;
176 #endif
177
178 extern size_t wcsnlen(const wchar_t *, size_t);
179 extern wchar_t *wcpcpy(wchar_t *_RESTRICT_KYWD, const wchar_t *_RESTRICT_KYWD);
180 extern wchar_t *wcpncpy(wchar_t *_RESTRICT_KYWD, const wchar_t *_RESTRICT_KYWD,
181 size_t);
182 extern size_t wcsxfrm_l(wchar_t *_RESTRICT_KYWD, const wchar_t *_RESTRICT_KYWD,
183 size_t, locale_t);
184 extern int wcscoll_l(const wchar_t *, const wchar_t *, locale_t);
185 extern wchar_t *wcsdup(const wchar_t *);
186 extern int wcscasecmp(const wchar_t *, const wchar_t *);
187 extern int wcscasecmp_l(const wchar_t *, const wchar_t *, locale_t);
188 extern int wcsncasecmp(const wchar_t *, const wchar_t *, size_t);
189 extern int wcsncasecmp_l(const wchar_t *, const wchar_t *, size_t, locale_t);
190 extern size_t mbsnrtowcs(wchar_t *_RESTRICT_KYWD, const char **_RESTRICT_KYWD,
191 size_t, size_t, mbstate_t *_RESTRICT_KYWD);
192
193 #endif /* defined(_XPG7) || !defined(_STRICT_SYMBOLS) */
194
195 #else /* __STDC__ */
196
197 #if !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE) || defined(__EXTENSIONS__)
198 extern int iswalpha();
199 extern int iswupper();
200 extern int iswlower();
201 extern int iswdigit();
202 extern int iswxdigit();
203 extern int iswalnum();
204 extern int iswspace();
205 extern int iswpunct();
206 extern int iswprint();
207 extern int iswgraph();
208 extern int iswcntrl();
209 extern int iswctype();
210 extern wint_t towlower();
211 extern wint_t towupper();
212 extern wchar_t *wcswcs();
213 extern int wcswidth();
214 extern int wcwidth();
215 extern wctype_t wctype();
216 #endif /* !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE)... */
217
218 #if defined(_XGP7) || !defined(_STRICT_SYMBOLS)
219 extern size_t wcsnlen();
220 extern wchar_t *wcpcpy();
221 extern wchar_t *wcpncpy();
222 extern size_t wcsxfrm_l();
223 extern int wcscoll_l();
224 extern wchar_t *wcsdup();
225 extern int wcscasecmp();
226 extern int wcscasecmp_l();
227 extern int wcsncasecmp();
228 extern int wcsncasecmp_l();
229 extern size_t mbsnrtowcs();
230 #endif
231
232 #endif /* __STDC__ */
233
234 #ifdef __cplusplus
235 }
236 #endif
237
238 #endif /* _WCHAR_H */
|
103 #ifdef __cplusplus
104 extern "C" {
105 #endif
106
107 #if !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE) || defined(__EXTENSIONS__)
108 #if !defined(_WCTYPE_T) || __cplusplus >= 199711L
109 #define _WCTYPE_T
110 typedef int wctype_t;
111 #endif
112 #endif /* !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE)... */
113
114 /*
115 * XPG6 requires that va_list be defined as defined in <stdarg.h>,
116 * however, inclusion of <stdarg.h> breaks Standard C namespace.
117 */
118 #if defined(_XPG6) && !defined(_VA_LIST)
119 #define _VA_LIST
120 typedef __va_list va_list;
121 #endif /* defined(_XPG6) && !defined(_VA_LIST) */
122
123 #if !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE) || defined(__EXTENSIONS__)
124 #if __cplusplus >= 199711L
125 namespace std {
126 #endif
127 extern int iswalpha(wint_t);
128 extern int iswupper(wint_t);
129 extern int iswlower(wint_t);
130 extern int iswdigit(wint_t);
131 extern int iswxdigit(wint_t);
132 extern int iswalnum(wint_t);
133 extern int iswspace(wint_t);
134 extern int iswpunct(wint_t);
135 extern int iswprint(wint_t);
136 extern int iswgraph(wint_t);
137 extern int iswcntrl(wint_t);
138 extern int iswctype(wint_t, wctype_t);
139 extern wint_t towlower(wint_t);
140 extern wint_t towupper(wint_t);
141 #ifndef _STRICT_XPG7
142 extern wchar_t *wcswcs(const wchar_t *, const wchar_t *);
143 #endif
144 extern int wcswidth(const wchar_t *, size_t);
145 extern int wcwidth(wchar_t);
146 extern wctype_t wctype(const char *);
147 #if __cplusplus >= 199711L
148 } /* namespace std */
149
150 using std::iswalpha;
151 using std::iswupper;
152 using std::iswlower;
153 using std::iswdigit;
154 using std::iswxdigit;
155 using std::iswalnum;
156 using std::iswspace;
157 using std::iswpunct;
158 using std::iswprint;
159 using std::iswgraph;
160 using std::iswcntrl;
161 using std::iswctype;
162 using std::towlower;
163 using std::towupper;
164 #ifndef _STRICT_XPG7
165 using std::wcswcs;
166 #endif
167 using std::wcswidth;
168 using std::wcwidth;
169 using std::wctype;
170 #endif
171 #endif /* !defined(_STRICT_STDC) || defined(_XOPEN_SOURCE)... */
172
173 #if defined(_XPG7) || !defined(_STRICT_SYMBOLS)
174
175 #ifndef _LOCALE_T
176 #define _LOCALE_T
177 typedef struct _locale *locale_t;
178 #endif
179
180 extern size_t wcsnlen(const wchar_t *, size_t);
181 extern wchar_t *wcpcpy(wchar_t *_RESTRICT_KYWD, const wchar_t *_RESTRICT_KYWD);
182 extern wchar_t *wcpncpy(wchar_t *_RESTRICT_KYWD, const wchar_t *_RESTRICT_KYWD,
183 size_t);
184 extern size_t wcsxfrm_l(wchar_t *_RESTRICT_KYWD, const wchar_t *_RESTRICT_KYWD,
185 size_t, locale_t);
186 extern int wcscoll_l(const wchar_t *, const wchar_t *, locale_t);
187 extern wchar_t *wcsdup(const wchar_t *);
188 extern int wcscasecmp(const wchar_t *, const wchar_t *);
189 extern int wcscasecmp_l(const wchar_t *, const wchar_t *, locale_t);
190 extern int wcsncasecmp(const wchar_t *, const wchar_t *, size_t);
191 extern int wcsncasecmp_l(const wchar_t *, const wchar_t *, size_t, locale_t);
192 extern size_t mbsnrtowcs(wchar_t *_RESTRICT_KYWD, const char **_RESTRICT_KYWD,
193 size_t, size_t, mbstate_t *_RESTRICT_KYWD);
194
195 #endif /* defined(_XPG7) || !defined(_STRICT_SYMBOLS) */
196
197 #ifdef __cplusplus
198 }
199 #endif
200
201 #endif /* _WCHAR_H */
|