// cwchar standard header
#pragma once
#ifndef _CWCHAR_
#define _CWCHAR_
#include <yvals.h>

#ifdef _STD_USING
 #undef _STD_USING
  #include <wchar.h>
 #define _STD_USING

#ifndef RC_INVOKED
typedef mbstate_t _Mbstatet;
#endif /* RC_INVOKED */

#else /* _STD_USING */
 #include <wchar.h>
#if defined(_WIN32_WCE)
 #include <time.h>
#endif

#if defined(_WIN32_WCE)
/* WinCE has these #defined instead of inline functions
   We need to overwrite that to put them in the std namespace */#ifdef putwc
#undef putwc
#endif
inline wint_t putwc(wchar_t wc, FILE *stream)
{
	return fputwc(wc, stream);
}

#ifdef getwc
#undef getwc
#endif
inline wint_t getwc(FILE *stream)
{
	return fgetwc(stream);
}

#endif /* _WIN32_WCE */

#ifndef RC_INVOKED
typedef mbstate_t _Mbstatet;

 #if _GLOBAL_USING
_STD_BEGIN

#if !defined(_WIN32_WCE)
// These are not implemented on CE
using ::btowc; 
using ::mbrlen; using ::mbrtowc; using ::mbsrtowcs;
using ::wcrtomb; using ::wcsrtombs; 
using ::wcscoll;
using ::wcsxfrm; 
using ::wctob;
#endif

using ::mbstate_t; using ::size_t; using ::tm; using ::wint_t;

using ::fgetwc; using ::fgetws; using ::fputwc;
using ::fputws; using ::fwide; using ::fwprintf;
using ::fwscanf; using ::getwc; using ::getwchar;
using ::mbsinit; using ::putwc; using ::putwchar;
using ::swprintf; using ::swscanf; using ::ungetwc;
using ::vfwprintf; using ::vswprintf; using ::vwprintf;
using ::wprintf; using ::wscanf;
using ::wcstol; using ::wcscat;
using ::wcschr; using ::wcscmp;
using ::wcscpy; using ::wcscspn; using ::wcslen;
using ::wcsncat; using ::wcsncmp; using ::wcsncpy;
using ::wcspbrk; using ::wcsrchr; using ::wcsspn;
using ::wcstod; using ::wcstoul; using ::wcsstr;
using ::wcstok;
using ::wmemchr; using ::wmemcmp; using ::wmemcpy;
using ::wmemmove; using ::wmemset; using ::wcsftime;
_STD_END
 #endif /* _GLOBAL_USING */
#endif /* RC_INVOKED */

#endif /* _STD_USING */
#endif /* _CWCHAR_ */

/*
 * Copyright (c) 1992-2005 by P.J. Plauger.  ALL RIGHTS RESERVED.
 * Consult your license regarding permissions and restrictions.
 V4.05:0009 */
