]> git.buserror.net Git - polintos/scott/priv.git/blob - include/c++/stl/wchar.h
minor doc updates
[polintos/scott/priv.git] / include / c++ / stl / wchar.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 #if !defined (_STLP_OUTERMOST_HEADER_ID)
17 #  define _STLP_OUTERMOST_HEADER_ID 0x278
18 #  include <stl/_prolog.h>
19 #elif (_STLP_OUTERMOST_HEADER_ID == 0x278) && !defined (_STLP_DONT_POP_HEADER_ID)
20 #  define _STLP_DONT_POP_HEADER_ID
21 #endif
22
23 #if !defined (_STLP_WCE_EVC3) && !defined (_STLP_NO_WCHAR_T)
24
25 #  if defined (__BORLANDC__)
26 /*
27 #  include <cstring>
28 */
29 #    include _STLP_NATIVE_CPP_C_HEADER(_str.h)
30 #    ifdef __cplusplus
31 using _STLP_VENDOR_CSTD::strlen;
32 using _STLP_VENDOR_CSTD::strspn;
33 #    endif
34 #  endif
35
36 #  if (((__GNUC__ < 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ < 3))) && defined (__APPLE__)) || defined (__OpenBSD__)
37 #    include _STLP_NATIVE_C_HEADER(stddef.h)
38 #  elif defined(__MWERKS__) && defined(N_PLAT_NLM)
39 /*
40  * MSL library has wrong definition of wint_t (with -wchar_t on) in wchar_t.h header.
41  * IMHO the best way is to comment line
42  *       typedef wchar_t wint_t;
43  * (I use this way).
44  *
45  * Another solution is to define _WINT_T (to avoid conflict with wint_t definitions in
46  * Novell SDK headers, _WCHAR_T defined in nlm_prefix.h). But you should define one
47  * before include any header from Novell's SDK, so this isn't too good choice.
48  *
49  * And third solution is don't use anyware (even here) wchar_t.h
50  *
51  *      - ptr, 2003 and 2005-05-07
52  */
53 /*
54 #if __option(wchar_type)
55 # define _WINT_T
56 #endif
57 */
58 #   include _STLP_NATIVE_CPP_C_HEADER(wchar_t.h)
59 #   include _STLP_NATIVE_C_HEADER(stddef.h)
60 #   include _STLP_NATIVE_C_HEADER(stdio.h)
61 #   include <unicode.h>
62 int wcslen( const wchar_t *_wc );
63 int wcscmp( const wchar_t *_wc1, const wchar_t *_wc2 );
64 int wcsncmp( const wchar_t *_wc1, const wchar_t *_wc2, size_t n );
65 wchar_t *wcsstr( const wchar_t *_wc1, const wchar_t *_wc2 );
66 wchar_t *wcschr( const wchar_t *_wc1, wchar_t _wc2 );
67 wchar_t *wcsrchr( const wchar_t *_wc1, wchar_t _wc2 );
68 wchar_t *wcscpy( wchar_t *_wc1, const wchar_t *_wc2 );
69 wchar_t *wcsncpy( wchar_t *_wc1, const wchar_t *_wc2, size_t n );
70 wchar_t *wcspbrk( const wchar_t *_wc, const wchar_t *_wc2 );
71 #  else
72 #    include _STLP_NATIVE_C_HEADER(wchar.h)
73 #  endif
74 #endif /* !defined (_STLP_WCE_EVC3) && !defined (_STLP_NO_WCHAR_T) */
75
76 #ifndef _STLP_INTERNAL_MBSTATE_T
77 #  include <stl/_mbstate_t.h>
78 #endif
79
80 #if (_STLP_OUTERMOST_HEADER_ID == 0x278)
81 #  if ! defined (_STLP_DONT_POP_HEADER_ID)
82 #    include <stl/_epilog.h>
83 #    undef  _STLP_OUTERMOST_HEADER_ID
84 #  else
85 #    undef  _STLP_DONT_POP_HEADER_ID
86 #  endif
87 #endif
88
89 /*
90  Local Variables:
91  mode:C++
92  End:
93 */