[CLASSPNP] Fix MSVC build. Brought to you by Timo.
[reactos.git] / reactos / include / c++ / stlport / stl / _cwctype.h
1 /*
2 * Copyright (c) 1999
3 * Boris Fomitchev
4 *
5 * This material is provided "as is", with absolutely no warranty expressed
6 * or implied. Any use is at your own risk.
7 *
8 * Permission to use or copy this software for any purpose is hereby granted
9 * without fee, provided the above notices are retained on all copies.
10 * Permission to modify the code and to distribute modified code is granted,
11 * provided the above notices are retained, and a notice that the code was
12 * modified is included with the above copyright notice.
13 *
14 */
15
16 #ifndef _STLP_INTERNAL_CWCTYPE
17 #define _STLP_INTERNAL_CWCTYPE
18
19 #if defined (__BORLANDC__) && !defined (_STLP_INTERNAL_CCTYPE)
20 # include <stl/_cctype.h>
21 #endif
22
23 #if !defined (_STLP_WCE_EVC3)
24 # if defined (_STLP_USE_NEW_C_HEADERS)
25 # if defined (_STLP_HAS_INCLUDE_NEXT)
26 # include_next <cwctype>
27 # else
28 # include _STLP_NATIVE_CPP_C_HEADER(cwctype)
29 # endif
30 # if defined (__MSL__)
31 namespace std {
32 typedef wchar_t wctrans_t;
33 wint_t towctrans(wint_t c, wctrans_t value);
34 wctrans_t wctrans(const char *name);
35 }
36 using std::wctrans_t;
37 using std::towctrans;
38 using std::wctrans;
39 # endif
40 # else
41 # include <wctype.h>
42 # endif
43
44 # if defined (_STLP_IMPORT_VENDOR_CSTD) && !defined (__hpux)
45
46 # if defined (_STLP_USE_GLIBC) && !(defined (_GLIBCPP_USE_WCHAR_T) || defined (_GLIBCXX_USE_WCHAR_T)) || \
47 defined (__sun) || defined (__FreeBSD__) || \
48 defined (__CYGWIN__) || \
49 defined (__MINGW32__) && ((__MINGW32_MAJOR_VERSION < 3) || (__MINGW32_MAJOR_VERSION == 3) && (__MINGW32_MINOR_VERSION <= 0))
50 //We take wide functions from global namespace:
51 # define _STLP_VENDOR_CSTD_WFUNC
52 # else
53 # define _STLP_VENDOR_CSTD_WFUNC _STLP_VENDOR_CSTD
54 # endif
55
56 _STLP_BEGIN_NAMESPACE
57 using _STLP_VENDOR_CSTD_WFUNC::wctype_t;
58 using _STLP_VENDOR_CSTD_WFUNC::wint_t;
59 # if !defined (_STLP_NO_CSTD_FUNCTION_IMPORTS)
60 # if !defined (__BORLANDC__) && !defined (__MSL__)
61 using _STLP_VENDOR_CSTD_WFUNC::wctrans_t;
62 # if !defined (__DMC__) && (!defined(_WIN32_WCE) || (_WIN32_WCE < 400))
63 using _STLP_VENDOR_CSTD_WFUNC::towctrans;
64 using _STLP_VENDOR_CSTD_WFUNC::wctrans;
65 using _STLP_VENDOR_CSTD_WFUNC::wctype;
66 # endif
67 using _STLP_VENDOR_CSTD_WFUNC::iswctype;
68 # endif
69 using _STLP_VENDOR_CSTD_WFUNC::iswalnum;
70 using _STLP_VENDOR_CSTD_WFUNC::iswalpha;
71 using _STLP_VENDOR_CSTD_WFUNC::iswcntrl;
72
73 using _STLP_VENDOR_CSTD_WFUNC::iswdigit;
74 using _STLP_VENDOR_CSTD_WFUNC::iswgraph;
75 using _STLP_VENDOR_CSTD_WFUNC::iswlower;
76 using _STLP_VENDOR_CSTD_WFUNC::iswprint;
77 using _STLP_VENDOR_CSTD_WFUNC::iswpunct;
78 using _STLP_VENDOR_CSTD_WFUNC::iswspace;
79 using _STLP_VENDOR_CSTD_WFUNC::iswupper;
80 using _STLP_VENDOR_CSTD_WFUNC::iswxdigit;
81
82 using _STLP_VENDOR_CSTD_WFUNC::towlower;
83 using _STLP_VENDOR_CSTD_WFUNC::towupper;
84 # endif /* _STLP_NO_CSTD_FUNCTION_IMPORTS */
85 _STLP_END_NAMESPACE
86 # endif /* _STLP_IMPORT_VENDOR_CSTD */
87 #endif /* _STLP_WCE_EVC3 */
88
89 #endif /* _STLP_INTERNAL_CWCTYPE */