/*************************************************************************** * FILE: wchar.h/cwchar (Wide character functions) * * Open Watcom Project * * Copyright (c) 2002-2008 Open Watcom Contributors. All Rights Reserved. * Portions Copyright (c) 1983-2002 Sybase, Inc. All Rights Reserved. * * This file is automatically generated. Do not edit directly. * * ========================================================================= * * Description: This header is part of the C/C++ standard library. It * declares functions and types pertaining to the use of * wide characters. ***************************************************************************/ #ifndef _CWCHAR_INCLUDED #define _CWCHAR_INCLUDED #ifndef __cplusplus #error the header cwchar requires C++ #endif #if !defined(_ENABLE_AUTODEPEND) #pragma read_only_file; #endif #ifndef _COMDEF_H_INCLUDED #include <_comdef.h> #endif #ifndef _IO_H_INCLUDED #include #endif #ifndef _STAT_H_INCLUDED #include #endif #ifndef _CSTDARG_INCLUDED #include #endif #ifndef _CSTDIO_INCLUDED #include #endif #ifndef _CSTDLIB_INCLUDED #include #endif #ifndef _CTIME_INCLUDED #include #endif extern "C" { #ifndef __cplusplus #ifndef _WCHAR_T_DEFINED #define _WCHAR_T_DEFINED #define _WCHAR_T_DEFINED_ typedef unsigned short wchar_t; #endif #endif /* __cplusplus */ #ifndef _STDWCTYPE_T_DEFINED #define _STDWCTYPE_T_DEFINED namespace std { typedef wchar_t wint_t; typedef wchar_t wctype_t; } #endif #ifndef _STDSIZE_T_DEFINED #define _STDSIZE_T_DEFINED namespace std { typedef unsigned size_t; } typedef std::size_t _w_size_t; #endif #ifndef NULL #if defined( __SMALL__ ) || defined( __MEDIUM__ ) || defined( __386__ ) || defined( __AXP__ ) || defined( __PPC__ ) #define NULL 0 #else #define NULL 0L #endif #endif #ifndef MB_CUR_MAX #define MB_CUR_MAX 2 #endif #ifndef MB_LEN_MAX #define MB_LEN_MAX 2 #endif namespace std { typedef int mbstate_t; _WCRTLINK extern wint_t btowc( int __c ); _WCRTLINK extern wint_t fgetwc( FILE *__strm ); _WCRTLINK extern wchar_t *fgetws( wchar_t *__s, int __n, FILE *__strm ); _WCRTLINK extern wint_t fputwc( wint_t __wc, FILE *__strm ); _WCRTLINK extern int fputws( const wchar_t *__s, FILE *__strm ); _WCRTLINK extern int fwide( FILE *__strm, int __mode ); _WCRTLINK extern int fwprintf( FILE *__strm, const wchar_t *__format, ... ); _WCRTLINK extern int fwscanf( FILE *__strm, const wchar_t *__format, ... ); _WCRTLINK extern wint_t getwc( FILE *__strm ); _WCRTLINK extern wint_t getwchar( void ); _WCRTLINK extern int mbrlen( const char *__s, size_t __n, mbstate_t *__ps ); _WCRTLINK extern int mbrtowc( wchar_t *__pwc, const char *__s, size_t __n, mbstate_t *__ps ); _WCRTLINK extern int mbsinit( const mbstate_t *__ps ); _WCRTLINK extern size_t mbsrtowcs( wchar_t *__dst, const char **__src, size_t __n, mbstate_t *__ps ); _WCRTLINK extern wint_t putwc( wint_t __wc, FILE *__strm ); _WCRTLINK extern wint_t putwchar( wint_t __wc ); #ifndef swprintf _WCRTLINK extern int swprintf( wchar_t *__s, size_t __n, const wchar_t *__format, ... ); #endif _WCRTLINK extern int swscanf( const wchar_t *__s, const wchar_t *__format, ... ); _WCRTLINK extern wint_t ungetwc( wint_t __wc, FILE *__strm ); _WCRTLINK extern int vfwprintf( FILE *__strm, const wchar_t *__format, va_list __arg ); _WCRTLINK extern int vswprintf( wchar_t *__s, size_t __n, const wchar_t *__format, va_list __arg ); _WCRTLINK extern int vwprintf( const wchar_t *__format, va_list __arg ); _WCRTLINK extern int vwscanf( const wchar_t *, __va_list ); _WCRTLINK extern int wcrtomb( char *__s, wchar_t __wc, mbstate_t *__ps ); _WCRTLINK extern wchar_t *wcscat( wchar_t *__s1, const wchar_t *__s2 ); _WCRTLINK extern wchar_t *wcschr( const wchar_t *__s, wint_t __wc ); _WCRTLINK extern int wcscmp( const wchar_t *__s1, const wchar_t *__s2 ); _WCRTLINK extern int wcscoll( const wchar_t *__s1, const wchar_t *__s2 ); _WCRTLINK extern wchar_t *wcscpy( wchar_t *__s1, const wchar_t *__s2 ); _WCRTLINK extern size_t wcscspn( const wchar_t *__s1, const wchar_t *__s2 ); _WCRTLINK extern size_t wcsftime( wchar_t *__s, size_t __maxsize, const wchar_t *__format, const struct tm *__timeptr ); _WCRTLINK extern size_t wcslen( const wchar_t *__s ); _WCRTLINK extern wchar_t *wcsncat( wchar_t *__s1, const wchar_t *__s2, size_t __n ); _WCRTLINK extern int wcsncmp( const wchar_t *__s1, const wchar_t *__s2, size_t __n ); _WCRTLINK extern wchar_t *wcsncpy( wchar_t *__s1, const wchar_t *__s2, size_t __n ); _WCRTLINK extern wchar_t *wcspbrk( const wchar_t *__s1, const wchar_t *__s2 ); _WCRTLINK extern wchar_t *wcsrchr( const wchar_t *__s, wint_t __wc ); _WCRTLINK extern size_t wcsrtombs( char *__dst, const wchar_t **__src, size_t __n, mbstate_t *__ps ); _WCRTLINK extern size_t wcsspn( const wchar_t *__s1, const wchar_t *__s2 ); _WCRTLINK extern wchar_t *wcsstr( const wchar_t *__s1, const wchar_t *__s2 ); _WMRTLINK extern double wcstod( const wchar_t *__nptr, wchar_t **__endptr ); _WCRTLINK extern wchar_t *wcstok( wchar_t *__s1, const wchar_t *__s2, wchar_t **__ptr ); _WCRTLINK extern long int wcstol( const wchar_t *, wchar_t **, int ); _WCRTLINK extern long long int wcstoll( const wchar_t *, wchar_t **, int ); _WCRTLINK extern unsigned long int wcstoul( const wchar_t *, wchar_t **, int ); _WCRTLINK extern unsigned long long int wcstoull( const wchar_t *, wchar_t **, int ); _WCRTLINK extern size_t wcsxfrm( wchar_t *__s1, const wchar_t *__s2, size_t __n ); _WCRTLINK extern int wctob( wint_t __wc ); _WCRTLINK extern wchar_t *wmemchr( const wchar_t *__s, wchar_t __wc, size_t __n ); _WCRTLINK extern int wmemcmp( const wchar_t *__s1, const wchar_t *__s2, size_t __n ); _WCRTLINK extern wchar_t *wmemcpy( wchar_t *__s1, const wchar_t *__s2, size_t __n ); _WCRTLINK extern wchar_t *wmemmove( wchar_t *__s1, const wchar_t *__s2, size_t __n ); _WCRTLINK extern wchar_t *wmemset( wchar_t *__s, wchar_t __wc, size_t __n ); _WCRTLINK extern int wprintf( const wchar_t *__format, ... ); _WCRTLINK extern int wscanf( const wchar_t *__format, ... ); } _WCRTLINK extern wchar_t *_wcsdup( const wchar_t * ); _WCRTLINK extern int _wcsicmp( const wchar_t *, const wchar_t * ); _WCRTLINK extern wchar_t *_wcslwr( wchar_t * ); _WCRTLINK extern int _wcsnicmp( const wchar_t *, const wchar_t *, std::size_t ); _WCRTLINK extern wchar_t *_wcsnset( wchar_t *, int, std::size_t ); _WCRTLINK extern wchar_t *_wcsupr( wchar_t * ); _WCRTLINK extern wchar_t *_wcsrev( wchar_t * ); _WCRTLINK extern wchar_t *_wcsset( wchar_t *, wchar_t ); _WCRTLINK extern wchar_t *_wmktemp( wchar_t *__template ); _WCRTLINK extern wchar_t *_wtempnam( wchar_t *__dir, wchar_t *__prefix ); #define WCHAR_MIN 0 #define WCHAR_MAX 65535U #define WEOF ((std::wint_t)(-1)) #if !defined(NO_EXT_KEYS) /* extensions enabled */ namespace std { _WCRTLINK extern int iswalnum( wint_t __wc ); _WCRTLINK extern int iswalpha( wint_t __wc ); _WCRTLINK extern int iswascii( wint_t __wc ); _WCRTLINK extern int iswcntrl( wint_t __wc ); _WCRTLINK extern int iswdigit( wint_t __wc ); _WCRTLINK extern int iswgraph( wint_t __wc ); _WCRTLINK extern int iswlower( wint_t __wc ); _WCRTLINK extern int iswprint( wint_t __wc ); _WCRTLINK extern int iswpunct( wint_t __wc ); _WCRTLINK extern int iswspace( wint_t __wc ); _WCRTLINK extern int iswupper( wint_t __wc ); _WCRTLINK extern int iswxdigit( wint_t __wc ); _WCRTLINK extern int iswctype( wint_t __wc, wctype_t __desc ); _WCRTLINK extern wctype_t wctype( const char *__property ); _WCRTLINK extern wint_t towlower( wint_t __wc ); _WCRTLINK extern wint_t towupper( wint_t __wc ); } _WCRTLINK extern int sisinit( const std::mbstate_t *__ps ); _WCRTLINK extern int _fmbrlen( const char _WCFAR *__s, std::size_t __n, std::mbstate_t _WCFAR *__ps ); _WCRTLINK extern int _fmbrtowc( wchar_t _WCFAR *__pwc, const char _WCFAR *__s, std::size_t __n, std::mbstate_t _WCFAR *__ps ); _WCRTLINK extern std::size_t _fmbsrtowcs( wchar_t _WCFAR *__dst, const char _WCFAR * _WCFAR *__src, std::size_t __n, std::mbstate_t _WCFAR *__ps ); _WCRTLINK extern int _fwcrtomb( char _WCFAR *__s, wchar_t __wc, std::mbstate_t _WCFAR *__ps ); _WCRTLINK extern std::size_t _fwcsrtombs( char _WCFAR *__dst, const wchar_t _WCFAR * _WCFAR *__src, std::size_t __n, std::mbstate_t _WCFAR *__ps ); _WCRTLINK extern int _swprintf( wchar_t *__s, const wchar_t *__format, ... ); _WCRTLINK extern int _vswprintf( wchar_t *__s, const wchar_t *__format, std::va_list __arg ); #endif } /* End of extern "C" */ #endif