epoc32/include/stdapis/stlport/cstd/cwchar
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
parent 0 061f57f2323e
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
williamr@2
     1
/*
williamr@2
     2
 * © Portions copyright (c) 2006-2007 Nokia Corporation.  All rights reserved.
williamr@2
     3
 *
williamr@2
     4
 * Copyright (c) 1999 
williamr@2
     5
 * Boris Fomitchev
williamr@2
     6
 *
williamr@2
     7
 * This material is provided "as is", with absolutely no warranty expressed
williamr@2
     8
 * or implied. Any use is at your own risk.
williamr@2
     9
 *
williamr@2
    10
 * Permission to use or copy this software for any purpose is hereby granted 
williamr@2
    11
 * without fee, provided the above notices are retained on all copies.
williamr@2
    12
 * Permission to modify the code and to distribute modified code is granted,
williamr@2
    13
 * provided the above notices are retained, and a notice that the code was
williamr@2
    14
 * modified is included with the above copyright notice.
williamr@2
    15
 *
williamr@2
    16
 */
williamr@2
    17
williamr@2
    18
#ifndef _STLP_CWCHAR
williamr@2
    19
# define _STLP_CWCHAR
williamr@2
    20
williamr@2
    21
# ifndef _STLP_OUTERMOST_HEADER_ID
williamr@2
    22
#  define _STLP_OUTERMOST_HEADER_ID 0x120
williamr@2
    23
#  include <stl/_prolog.h>
williamr@2
    24
# endif
williamr@2
    25
williamr@2
    26
# ifdef __GNUC__
williamr@2
    27
#  include <cstddef>
williamr@2
    28
# endif
williamr@2
    29
williamr@2
    30
# if ! defined (_STLP_WINCE)
williamr@2
    31
williamr@2
    32
# if defined (__BORLANDC__) &&  (__BORLANDC__ >= 0x530 ) && ! defined (_STLP_OWN_IOSTREAMS)
williamr@2
    33
/*  Borland defines this stuff here */
williamr@2
    34
#   include <iosfwd>
williamr@2
    35
# endif
williamr@2
    36
williamr@2
    37
# if !  defined (_STLP_NO_CWCHAR) && defined  (_STLP_USE_NEW_C_HEADERS)
williamr@2
    38
#  include _STLP_NATIVE_CPP_C_HEADER(cwchar)
williamr@2
    39
williamr@2
    40
# elif defined (__MRC__) || (defined (__SC__) && !defined (__DMC__)) || defined (__BORLANDC__) || defined(__FreeBSD__) || (defined (__GNUC__) && defined (__APPLE__) || defined( __Lynx__ )) || defined (__SYMBIAN32__) || defined (__WINS__) || defined (_STLP_NO_WCHAR_T)
williamr@2
    41
williamr@2
    42
#ifdef __SYMBIAN32__
williamr@2
    43
#  include <stddef.h>
williamr@2
    44
#else
williamr@2
    45
# include _STLP_NATIVE_C_HEADER(stddef.h)
williamr@2
    46
#endif
williamr@2
    47
#  if defined (__FreeBSD__) || defined (__Lynx__) || defined (__WINS__) || defined (__SYMBIAN32__)
williamr@2
    48
#   ifndef _WINT_T
williamr@2
    49
#ifdef __SYMBIAN32__
williamr@2
    50
#  include <wchar.h>
williamr@2
    51
#else
williamr@2
    52
# include _STLP_NATIVE_C_HEADER(wchar.h)
williamr@2
    53
#endif
williamr@2
    54
#    define _WINT_T
williamr@2
    55
#   endif /* _WINT_T */
williamr@2
    56
#  endif
williamr@2
    57
williamr@2
    58
# else 
williamr@2
    59
#  include _STLP_NATIVE_C_HEADER(wchar.h)
williamr@2
    60
williamr@2
    61
#  if defined(__sun) && (defined(_XOPEN_SOURCE) || (_XOPEN_VERSION - 0 == 4))
williamr@2
    62
extern wint_t   btowc();
williamr@2
    63
extern int      fwprintf();
williamr@2
    64
extern int      fwscanf();
williamr@2
    65
extern int      fwide();
williamr@2
    66
extern int      mbsinit();
williamr@2
    67
extern size_t   mbrlen();
williamr@2
    68
extern size_t   mbrtowc();
williamr@2
    69
extern size_t   mbsrtowcs();
williamr@2
    70
extern int      swprintf();
williamr@2
    71
extern int      swscanf();
williamr@2
    72
extern int      vfwprintf();
williamr@2
    73
extern int      vwprintf();
williamr@2
    74
extern int      vswprintf();
williamr@2
    75
extern size_t   wcrtomb();
williamr@2
    76
extern size_t   wcsrtombs();
williamr@2
    77
extern wchar_t  *wcsstr();
williamr@2
    78
extern int      wctob();
williamr@2
    79
extern wchar_t  *wmemchr();
williamr@2
    80
extern int      wmemcmp();
williamr@2
    81
extern wchar_t  *wmemcpy();
williamr@2
    82
extern wchar_t  *wmemmove();
williamr@2
    83
extern wchar_t  *wmemset();
williamr@2
    84
extern int      wprintf();
williamr@2
    85
extern int      wscanf();
williamr@2
    86
#  endif
williamr@2
    87
# endif
williamr@2
    88
williamr@2
    89
#if defined(__MSL__) && __MSL__ <= 0x51FF	/* dwa 2/28/99 - not yet implemented by MSL  */
williamr@2
    90
#   define _STLP_WCHAR_MSL_EXCLUDE 1
williamr@2
    91
namespace std
williamr@2
    92
{ 
williamr@2
    93
  extern "C" size_t wcsftime(wchar_t * str, size_t max_size, const wchar_t * format_str, const struct tm * timeptr);
williamr@2
    94
}
williamr@2
    95
#  define _STLP_NO_MBSTATE_T 1
williamr@2
    96
#elif defined (__BORLANDC__)
williamr@2
    97
#  ifdef _STLP_OWN_IOSTREAMS
williamr@2
    98
#   define _STLP_NO_NATIVE_MBSTATE_T
williamr@2
    99
#  endif
williamr@2
   100
#  define _STLP_WCHAR_BORLAND_EXCLUDE 1
williamr@2
   101
#  if (__BORLANDC__ < 0x540 )
williamr@2
   102
#   define _STLP_NO_MBSTATE_T 1
williamr@2
   103
#   define _STLP_WCHAR_SUNPRO_EXCLUDE
williamr@2
   104
#  endif
williamr@2
   105
#endif
williamr@2
   106
williamr@2
   107
#ifndef _STLP_CWCHAR_H
williamr@2
   108
# include <stl/_cwchar.h>
williamr@2
   109
#endif
williamr@2
   110
williamr@2
   111
# ifdef _STLP_IMPORT_VENDOR_CSTD
williamr@2
   112
williamr@2
   113
#if defined (__SUNPRO_CC) && defined (_STLP_NO_OWN_IOSTREAMS) && !defined (_STLP_HAS_NO_NEW_C_HEADERS)
williamr@2
   114
using _STLP_VENDOR_CSTD::wint_t; 
williamr@2
   115
#endif
williamr@2
   116
williamr@2
   117
_STLP_BEGIN_NAMESPACE
williamr@2
   118
# ifdef _STLP_NO_WCHAR_T
williamr@2
   119
typedef int wint_t;
williamr@2
   120
# else
williamr@2
   121
// gcc 3.0 has a glitch : wint_t only sucked into the global namespace if _GLIBCPP_USE_WCHAR_T is defined
williamr@2
   122
#  if defined (__GNUC__) && ! defined (_GLIBCPP_USE_WCHAR_T)
williamr@2
   123
using ::wint_t;
williamr@2
   124
#  else
williamr@2
   125
using _STLP_VENDOR_CSTD::wint_t;
williamr@2
   126
#  endif
williamr@2
   127
# endif
williamr@2
   128
williamr@2
   129
williamr@2
   130
using _STLP_VENDOR_CSTD::size_t;
williamr@2
   131
williamr@2
   132
#  if !defined (_STLP_NO_NATIVE_MBSTATE_T) && ! defined (_STLP_USE_OWN_MBSTATE_T)
williamr@2
   133
using _STLP_VENDOR_MB_NAMESPACE::mbstate_t;
williamr@2
   134
williamr@2
   135
# if !defined (_STLP_NO_CSTD_FUNCTION_IMPORTS) && !defined(_STLP_WCHAR_BORLAND_EXCLUDE) \
williamr@2
   136
  && (!defined(__MSL__) || __MSL__ > 0x6001)
williamr@2
   137
#  if ! (defined (__KCC) || defined (__GNUC__))
williamr@2
   138
using _STLP_VENDOR_MB_NAMESPACE::btowc;
williamr@2
   139
#   if (!defined(__MSL__) || __MSL__ > 0x7001)
williamr@2
   140
using _STLP_VENDOR_MB_NAMESPACE::mbsinit;
williamr@2
   141
#   endif
williamr@2
   142
#  endif
williamr@2
   143
# if ! defined (__GNUC__)
williamr@2
   144
using _STLP_VENDOR_MB_NAMESPACE::mbrlen;
williamr@2
   145
using _STLP_VENDOR_MB_NAMESPACE::mbrtowc;
williamr@2
   146
using _STLP_VENDOR_MB_NAMESPACE::mbsrtowcs;
williamr@2
   147
using _STLP_VENDOR_MB_NAMESPACE::wcrtomb;
williamr@2
   148
using _STLP_VENDOR_MB_NAMESPACE::wcsrtombs;
williamr@2
   149
# endif
williamr@2
   150
#    endif /* BORLAND && !__MSL__ || __MSL__ > 0x6001 */
williamr@2
   151
williamr@2
   152
#  endif /* _STLP_NO_NATIVE_MBSTATE_T */
williamr@2
   153
williamr@2
   154
# if !defined (_STLP_NO_NATIVE_WIDE_FUNCTIONS) && ! defined (_STLP_NO_CSTD_FUNCTION_IMPORTS)
williamr@2
   155
williamr@2
   156
# if !defined (_STLP_WCHAR_BORLAND_EXCLUDE) && ! defined (_STLP_NO_CSTD_FUNCTION_IMPORTS)
williamr@2
   157
using _STLP_VENDOR_CSTD::fgetwc;
williamr@2
   158
using _STLP_VENDOR_CSTD::fgetws;
williamr@2
   159
using _STLP_VENDOR_CSTD::fputwc;
williamr@2
   160
using _STLP_VENDOR_CSTD::fputws;
williamr@2
   161
# endif
williamr@2
   162
williamr@2
   163
#  if !( defined (_STLP_WCHAR_SUNPRO_EXCLUDE) || defined (_STLP_WCHAR_BORLAND_EXCLUDE) \
williamr@2
   164
      || defined(_STLP_WCHAR_HPACC_EXCLUDE) )
williamr@2
   165
# ifndef __DECCXX
williamr@2
   166
using _STLP_VENDOR_CSTD::fwide;
williamr@2
   167
# endif
williamr@2
   168
using _STLP_VENDOR_CSTD::fwprintf;
williamr@2
   169
using _STLP_VENDOR_CSTD::fwscanf;
williamr@2
   170
using _STLP_VENDOR_CSTD::getwchar;
williamr@2
   171
#  endif
williamr@2
   172
williamr@2
   173
# ifndef _STLP_WCHAR_BORLAND_EXCLUDE
williamr@2
   174
using _STLP_VENDOR_CSTD::getwc;
williamr@2
   175
using _STLP_VENDOR_CSTD::ungetwc;
williamr@2
   176
williamr@2
   177
using _STLP_VENDOR_CSTD::putwc;
williamr@2
   178
using _STLP_VENDOR_CSTD::putwchar;
williamr@2
   179
# endif
williamr@2
   180
williamr@2
   181
#  if !( defined (_STLP_WCHAR_SUNPRO_EXCLUDE) || defined (_STLP_WCHAR_BORLAND_EXCLUDE)\
williamr@2
   182
      || defined(_STLP_WCHAR_HPACC_EXCLUDE) ) 
williamr@2
   183
using _STLP_VENDOR_CSTD::swprintf;
williamr@2
   184
using _STLP_VENDOR_CSTD::swscanf;
williamr@2
   185
using _STLP_VENDOR_CSTD::vfwprintf;
williamr@2
   186
using _STLP_VENDOR_CSTD::vwprintf;
williamr@2
   187
using _STLP_VENDOR_CSTD::vswprintf;
williamr@2
   188
williamr@2
   189
#   if !defined(__MSL__) || __MSL__ > 0x7001
williamr@2
   190
using _STLP_VENDOR_CSTD::wcsftime;
williamr@2
   191
#   endif
williamr@2
   192
using _STLP_VENDOR_CSTD::wcstok;
williamr@2
   193
williamr@2
   194
#  endif
williamr@2
   195
williamr@2
   196
# if !(defined (__BORLANDC__) && (__BORLANDC__ < 0x540))
williamr@2
   197
using _STLP_VENDOR_CSTD::wcscat;
williamr@2
   198
using _STLP_VENDOR_CSTD::wcsrchr;
williamr@2
   199
using _STLP_VENDOR_CSTD::wcscmp;
williamr@2
   200
using _STLP_VENDOR_CSTD::wcscoll;
williamr@2
   201
williamr@2
   202
using _STLP_VENDOR_CSTD::wcscpy;
williamr@2
   203
using _STLP_VENDOR_CSTD::wcscspn;
williamr@2
   204
williamr@2
   205
using _STLP_VENDOR_CSTD::wcslen;
williamr@2
   206
using _STLP_VENDOR_CSTD::wcsncat;
williamr@2
   207
using _STLP_VENDOR_CSTD::wcsncmp;
williamr@2
   208
using _STLP_VENDOR_CSTD::wcsncpy;
williamr@2
   209
using _STLP_VENDOR_CSTD::wcspbrk;
williamr@2
   210
using _STLP_VENDOR_CSTD::wcschr;
williamr@2
   211
williamr@2
   212
using _STLP_VENDOR_CSTD::wcsspn;
williamr@2
   213
using _STLP_VENDOR_CSTD::wcsxfrm;
williamr@2
   214
williamr@2
   215
# endif
williamr@2
   216
williamr@2
   217
#  if !defined (_STLP_WCHAR_BORLAND_EXCLUDE)
williamr@2
   218
williamr@2
   219
using _STLP_VENDOR_CSTD::wcstod;
williamr@2
   220
using _STLP_VENDOR_CSTD::wcstol;
williamr@2
   221
williamr@2
   222
# endif
williamr@2
   223
williamr@2
   224
#  if !( defined (_STLP_WCHAR_SUNPRO_EXCLUDE) || defined(_STLP_WCHAR_HPACC_EXCLUDE) )
williamr@2
   225
williamr@2
   226
using _STLP_VENDOR_CSTD::wcsstr;
williamr@2
   227
using _STLP_VENDOR_CSTD::wmemchr;
williamr@2
   228
williamr@2
   229
#  if !defined (_STLP_WCHAR_BORLAND_EXCLUDE)
williamr@2
   230
williamr@2
   231
#ifndef __DMC__
williamr@2
   232
using _STLP_VENDOR_CSTD::wctob;
williamr@2
   233
using _STLP_VENDOR_CSTD::wmemcmp;
williamr@2
   234
#endif
williamr@2
   235
using _STLP_VENDOR_CSTD::wmemmove;
williamr@2
   236
using _STLP_VENDOR_CSTD::wprintf;
williamr@2
   237
using _STLP_VENDOR_CSTD::wscanf;
williamr@2
   238
williamr@2
   239
#  endif
williamr@2
   240
williamr@2
   241
using _STLP_VENDOR_CSTD::wmemcpy;
williamr@2
   242
using _STLP_VENDOR_CSTD::wmemset;
williamr@2
   243
#  endif
williamr@2
   244
williamr@2
   245
# endif /* _STLP_NO_NATIVE_WIDE_FUNCTIONS */
williamr@2
   246
_STLP_END_NAMESPACE
williamr@2
   247
# endif /* _STLP_IMPORT_VENDOR_CSTD */
williamr@2
   248
williamr@2
   249
# undef _STLP_WCHAR_SUNPRO_EXCLUDE
williamr@2
   250
# undef _STLP_WCHAR_MSL_EXCLUDE
williamr@2
   251
williamr@2
   252
# endif /* WINCE */
williamr@2
   253
williamr@2
   254
# if (_STLP_OUTERMOST_HEADER_ID == 0x120)
williamr@2
   255
#  include <stl/_epilog.h>
williamr@2
   256
#  undef _STLP_OUTERMOST_HEADER_ID
williamr@2
   257
# endif
williamr@2
   258
williamr@2
   259
#endif /* _STLP_CWCHAR */
williamr@2
   260