epoc32/include/stdapis/wchar.h
branchSymbian2
changeset 2 2fe1408b6811
parent 0 061f57f2323e
child 4 837f303aceeb
     1.1 --- a/epoc32/include/stdapis/wchar.h	Tue Nov 24 13:55:44 2009 +0000
     1.2 +++ b/epoc32/include/stdapis/wchar.h	Tue Mar 16 16:12:26 2010 +0000
     1.3 @@ -1,1 +1,368 @@
     1.4 -wchar.h
     1.5 +/*-
     1.6 + * Copyright (c)1999 Citrus Project,
     1.7 + * All rights reserved.
     1.8 + *
     1.9 + * Redistribution and use in source and binary forms, with or without
    1.10 + * modification, are permitted provided that the following conditions
    1.11 + * are met:
    1.12 + * 1. Redistributions of source code must retain the above copyright
    1.13 + *    notice, this list of conditions and the following disclaimer.
    1.14 + * 2. Redistributions in binary form must reproduce the above copyright
    1.15 + *    notice, this list of conditions and the following disclaimer in the
    1.16 + *    documentation and/or other materials provided with the distribution.
    1.17 + *
    1.18 + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
    1.19 + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    1.20 + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    1.21 + * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
    1.22 + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    1.23 + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    1.24 + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    1.25 + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    1.26 + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    1.27 + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    1.28 + * SUCH DAMAGE.
    1.29 + *
    1.30 + * $FreeBSD: src/include/wchar.h,v 1.45 2004/08/12 12:19:10 tjr Exp $
    1.31 + *
    1.32 + * © Portions copyright (c) 2006 Nokia Corporation.  All rights reserved.
    1.33 + * © Portions copyright (c) 2007 Symbian Software Ltd. All rights reserved.
    1.34 + */
    1.35 +
    1.36 +/*-
    1.37 + * Copyright (c) 1999, 2000 The NetBSD Foundation, Inc.
    1.38 + * All rights reserved.
    1.39 + *
    1.40 + * This code is derived from software contributed to The NetBSD Foundation
    1.41 + * by Julian Coleman.
    1.42 + *
    1.43 + * Redistribution and use in source and binary forms, with or without
    1.44 + * modification, are permitted provided that the following conditions
    1.45 + * are met:
    1.46 + * 1. Redistributions of source code must retain the above copyright
    1.47 + *    notice, this list of conditions and the following disclaimer.
    1.48 + * 2. Redistributions in binary form must reproduce the above copyright
    1.49 + *    notice, this list of conditions and the following disclaimer in the
    1.50 + *    documentation and/or other materials provided with the distribution.
    1.51 + * 4. Neither the name of The NetBSD Foundation nor the names of its
    1.52 + *    contributors may be used to endorse or promote products derived
    1.53 + *    from this software without specific prior written permission.
    1.54 + *
    1.55 + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
    1.56 + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
    1.57 + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    1.58 + * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
    1.59 + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    1.60 + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    1.61 + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    1.62 + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    1.63 + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    1.64 + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    1.65 + * POSSIBILITY OF SUCH DAMAGE.
    1.66 + *
    1.67 + *	$NetBSD: wchar.h,v 1.8 2000/12/22 05:31:42 itojun Exp $
    1.68 + */
    1.69 +
    1.70 +#ifndef _WCHAR_H_
    1.71 +#define _WCHAR_H_
    1.72 +
    1.73 +#ifdef __cplusplus
    1.74 +extern "C"
    1.75 +{
    1.76 +#endif //__cplusplus
    1.77 +
    1.78 +#include <sys/cdefs.h>
    1.79 +#include <sys/_null.h>
    1.80 +#include <sys/_types.h>
    1.81 +#include <sys/stat.h>
    1.82 +#include <machine/_limits.h>
    1.83 +#include <_ctype.h>
    1.84 +#include <_ansi.h>
    1.85 +#include <stdio.h>
    1.86 +#include <sys/dirent.h>
    1.87 +#ifdef __SYMBIAN32__
    1.88 +#include <stdarg.h>
    1.89 +#endif //__SYMBIAN32__
    1.90 +
    1.91 +#ifndef _MBSTATE_T_DECLARED
    1.92 +typedef	__mbstate_t	mbstate_t;
    1.93 +#define	_MBSTATE_T_DECLARED
    1.94 +#endif
    1.95 +
    1.96 +#ifndef _SIZE_T_DECLARED
    1.97 +typedef	__size_t	size_t;
    1.98 +#define	_SIZE_T_DECLARED
    1.99 +#endif
   1.100 +
   1.101 +#ifndef __SYMBIAN32__
   1.102 +#ifndef	__cplusplus
   1.103 +#ifndef _WCHAR_T_DECLARED
   1.104 +typedef	__wchar_t	wchar_t;
   1.105 +#define	_WCHAR_T_DECLARED
   1.106 +#endif //_WCHAR_T_DECLARED
   1.107 +#endif //__cplusplus
   1.108 +#else //__SYMBIAN32__
   1.109 +//C++ built-in wchar data type which doesn't clash with the definition of wchar
   1.110 +#if !defined _WCHAR_T_DECLARED && defined __cplusplus && defined __WINSCW__
   1.111 +#if __option(wchar_type)
   1.112 +#define	_WCHAR_T_DECLARED
   1.113 +#endif //__option (wchar_type)
   1.114 +#endif //__WINSCW__
   1.115 +
   1.116 +#if !defined _WCHAR_T_DECLARED && !defined __wchar_t_defined
   1.117 +#if defined __cplusplus
   1.118 +#if defined __WINSCW__
   1.119 +typedef unsigned short int wchar_t;
   1.120 +#define	_WCHAR_T_DECLARED
   1.121 +#endif // __WINSCW__
   1.122 +#else
   1.123 +typedef unsigned short int wchar_t;
   1.124 +#define	_WCHAR_T_DECLARED
   1.125 +#endif // __cplusplus 
   1.126 +#endif // __wchar_t_defined
   1.127 +#endif //__SYMBIAN32__
   1.128 +
   1.129 +#ifndef _WINT_T_DECLARED
   1.130 +typedef	__wint_t	wint_t;
   1.131 +#define	_WINT_T_DECLARED
   1.132 +#endif
   1.133 +
   1.134 +#ifndef	WCHAR_MIN 
   1.135 +#define	WCHAR_MIN	(wchar_t)__INT_MIN
   1.136 +#define	WCHAR_MAX	(wchar_t)__INT_MAX
   1.137 +#endif
   1.138 +
   1.139 +#ifndef WEOF
   1.140 +#define	WEOF 	((wint_t)-1)
   1.141 +#endif
   1.142 +
   1.143 +struct __sFILE;
   1.144 +struct tm;
   1.145 +
   1.146 +__BEGIN_DECLS
   1.147 +IMPORT_C wint_t	btowc(int);
   1.148 +IMPORT_C wint_t	fgetwc(struct __sFILE *);
   1.149 +IMPORT_C wchar_t	*
   1.150 +	fgetws(wchar_t * __restrict, int, struct __sFILE * __restrict);
   1.151 +IMPORT_C wint_t	fputwc(wchar_t, struct __sFILE *);
   1.152 +IMPORT_C int	fputws(const wchar_t * __restrict, struct __sFILE * __restrict);
   1.153 +IMPORT_C int	fwide(struct __sFILE *, int);
   1.154 +IMPORT_C int	fwprintf(struct __sFILE * __restrict, const wchar_t * __restrict, ...);
   1.155 +IMPORT_C int	fwscanf(struct __sFILE * __restrict, const wchar_t * __restrict, ...);
   1.156 +IMPORT_C wint_t	getwc(struct __sFILE *);
   1.157 +IMPORT_C wint_t	getwchar(void);
   1.158 +IMPORT_C size_t	mbrlen(const char * __restrict, size_t, mbstate_t * __restrict);
   1.159 +IMPORT_C size_t	mbrtowc(wchar_t * __restrict, const char * __restrict, size_t,
   1.160 +	    mbstate_t * __restrict);
   1.161 +IMPORT_C int	mbsinit(const mbstate_t *);
   1.162 +IMPORT_C size_t	mbsrtowcs(wchar_t * __restrict, const char ** __restrict, size_t,
   1.163 +	    mbstate_t * __restrict);
   1.164 +IMPORT_C wint_t	putwc(wchar_t, struct __sFILE *);
   1.165 +IMPORT_C wint_t	putwchar(wchar_t);
   1.166 +IMPORT_C int	swprintf(wchar_t * __restrict, size_t n, const wchar_t * __restrict,
   1.167 +	    ...);
   1.168 +IMPORT_C int	swscanf(const wchar_t * __restrict, const wchar_t * __restrict, ...);
   1.169 +IMPORT_C wint_t	ungetwc(wint_t, struct __sFILE *);
   1.170 +IMPORT_C int	vfwprintf(struct __sFILE * __restrict, const wchar_t * __restrict,
   1.171 +	    va_list);
   1.172 +IMPORT_C int	vswprintf(wchar_t * __restrict, size_t n, const wchar_t * __restrict,
   1.173 +	    va_list);
   1.174 +IMPORT_C int	vwprintf(const wchar_t * __restrict, va_list);
   1.175 +IMPORT_C size_t	wcrtomb(char * __restrict, wchar_t, mbstate_t * __restrict);
   1.176 +IMPORT_C wchar_t	*wcscat(wchar_t * __restrict, const wchar_t * __restrict);
   1.177 +IMPORT_C wchar_t	*wcschr(const wchar_t *, wchar_t) __pure;
   1.178 +IMPORT_C int	wcscmp(const wchar_t *, const wchar_t *) __pure;
   1.179 +IMPORT_C int	wcscoll(const wchar_t *, const wchar_t *);
   1.180 +IMPORT_C wchar_t	*wcscpy(wchar_t * __restrict, const wchar_t * __restrict);
   1.181 +IMPORT_C size_t	wcscspn(const wchar_t *, const wchar_t *) __pure;
   1.182 +IMPORT_C size_t	wcsftime(wchar_t * __restrict, size_t, const wchar_t * __restrict,
   1.183 +	    const struct tm * __restrict);
   1.184 +IMPORT_C size_t	wcslen(const wchar_t *) __pure;
   1.185 +IMPORT_C wchar_t	*wcsncat(wchar_t * __restrict, const wchar_t * __restrict,
   1.186 +	    size_t);
   1.187 +IMPORT_C int	wcsncmp(const wchar_t *, const wchar_t *, size_t) __pure;
   1.188 +IMPORT_C wchar_t	*wcsncpy(wchar_t * __restrict , const wchar_t * __restrict, size_t);
   1.189 +IMPORT_C wchar_t	*wcspbrk(const wchar_t *, const wchar_t *) __pure;
   1.190 +IMPORT_C wchar_t	*wcsrchr(const wchar_t *, wchar_t) __pure;
   1.191 +IMPORT_C size_t	wcsrtombs(char * __restrict, const wchar_t ** __restrict, size_t,
   1.192 +	    mbstate_t * __restrict);
   1.193 +IMPORT_C size_t	wcsspn(const wchar_t *, const wchar_t *) __pure;
   1.194 +IMPORT_C wchar_t	*wcsstr(const wchar_t * __restrict, const wchar_t * __restrict)
   1.195 +	    __pure;
   1.196 +IMPORT_C size_t	wcsxfrm(wchar_t * __restrict, const wchar_t * __restrict, size_t);
   1.197 +IMPORT_C int	wctob(wint_t);
   1.198 +IMPORT_C double	wcstod(const wchar_t * __restrict, wchar_t ** __restrict);
   1.199 +IMPORT_C wchar_t	*wcstok(wchar_t * __restrict, const wchar_t * __restrict,
   1.200 +	    wchar_t ** __restrict);
   1.201 +IMPORT_C long	 wcstol(const wchar_t * __restrict, wchar_t ** __restrict, int);
   1.202 +IMPORT_C unsigned long
   1.203 +	 wcstoul(const wchar_t * __restrict, wchar_t ** __restrict, int);
   1.204 +IMPORT_C wchar_t	*wmemchr(const wchar_t *, wchar_t, size_t) __pure;
   1.205 +IMPORT_C int	wmemcmp(const wchar_t *, const wchar_t *, size_t) __pure;
   1.206 +IMPORT_C wchar_t	*wmemcpy(wchar_t * __restrict, const wchar_t * __restrict, size_t);
   1.207 +IMPORT_C wchar_t	*wmemmove(wchar_t *, const wchar_t *, size_t);
   1.208 +IMPORT_C wchar_t	*wmemset(wchar_t *, wchar_t, size_t);
   1.209 +IMPORT_C int	wprintf(const wchar_t * __restrict, ...);
   1.210 +IMPORT_C int	wscanf(const wchar_t * __restrict, ...);
   1.211 +#ifdef __SYMBIAN32__
   1.212 +IMPORT_C long long 	 wcstoq(const wchar_t * __restrict, wchar_t ** __restrict, int);
   1.213 +IMPORT_C unsigned long long wcstouq(const wchar_t * __restrict, wchar_t ** __restrict, int);
   1.214 +IMPORT_C wchar_t *wcswcs(const wchar_t * __restrict s, const wchar_t * __restrict find);
   1.215 +IMPORT_C int wpopen3 (const wchar_t* file, const wchar_t* cmd, wchar_t** env, int fids[3]);
   1.216 +#endif //__SYMBIAN32__
   1.217 +
   1.218 +#ifndef _STDSTREAM_DECLARED
   1.219 +extern struct __sFILE *__stdinp;
   1.220 +extern struct __sFILE *__stdoutp;
   1.221 +extern struct __sFILE *__stderrp;
   1.222 +#define	_STDSTREAM_DECLARED
   1.223 +#endif
   1.224 +
   1.225 +#ifndef __SYMBIAN32__
   1.226 +#define	getwc(fp)	fgetwc(fp)
   1.227 +#define	getwchar()	fgetwc(__stdinp)
   1.228 +#define	putwc(wc, fp)	fputwc(wc, fp)
   1.229 +#define	putwchar(wc)	fputwc(wc, __stdoutp)
   1.230 +#else //__SYMBIAN32__
   1.231 +IMPORT_C wint_t	getwc(struct __sFILE *);
   1.232 +IMPORT_C wint_t	getwchar(void);
   1.233 +IMPORT_C wint_t	putwc(wchar_t, struct __sFILE *);
   1.234 +IMPORT_C wint_t	putwchar(wchar_t);
   1.235 +#endif //__SYMBIAN32__
   1.236 +
   1.237 +
   1.238 +#if __ISO_C_VISIBLE >= 1999
   1.239 +IMPORT_C int	vfwscanf(struct __sFILE * __restrict, const wchar_t * __restrict,
   1.240 +	    va_list);
   1.241 +IMPORT_C int	vswscanf(const wchar_t * __restrict, const wchar_t * __restrict,
   1.242 +	    va_list);
   1.243 +IMPORT_C int	vwscanf(const wchar_t * __restrict, va_list);
   1.244 +IMPORT_C float	wcstof(const wchar_t * __restrict, wchar_t ** __restrict);
   1.245 +IMPORT_C long double
   1.246 +	wcstold(const wchar_t * __restrict, wchar_t ** __restrict);
   1.247 +#ifdef __LONG_LONG_SUPPORTED
   1.248 +/* LONGLONG */
   1.249 +IMPORT_C long long
   1.250 +	wcstoll(const wchar_t * __restrict, wchar_t ** __restrict, int);
   1.251 +/* LONGLONG */
   1.252 +IMPORT_C unsigned long long
   1.253 +	 wcstoull(const wchar_t * __restrict, wchar_t ** __restrict, int);
   1.254 +#endif
   1.255 +#endif	/* __ISO_C_VISIBLE >= 1999 */
   1.256 +
   1.257 +#if __XSI_VISIBLE
   1.258 +IMPORT_C int	wcswidth(const wchar_t *, size_t);
   1.259 +IMPORT_C int	wcwidth(wchar_t);
   1.260 +#ifndef __SYMBIAN32__
   1.261 +#define	wcwidth(_c)	__wcwidth(_c)
   1.262 +#endif //__SYMBIAN32__
   1.263 +#endif
   1.264 +
   1.265 +#if __BSD_VISIBLE
   1.266 +
   1.267 +#ifdef __SYMBIAN_COMPILE_UNUSED__
   1.268 +wchar_t	*fgetwln(struct __sFILE * __restrict, size_t * __restrict);
   1.269 +#endif
   1.270 +
   1.271 +IMPORT_C size_t	mbsnrtowcs(wchar_t * __restrict, const char ** __restrict, size_t,
   1.272 +	    size_t, mbstate_t * __restrict);
   1.273 +IMPORT_C size_t	wcsnrtombs(char * __restrict, const wchar_t ** __restrict, size_t,
   1.274 +	    size_t, mbstate_t * __restrict);
   1.275 +#endif
   1.276 +#ifdef __SYMBIAN32__
   1.277 +IMPORT_C wchar_t *wcpcpy(wchar_t *dst, const wchar_t *src);
   1.278 +IMPORT_C wchar_t *wcpncpy(wchar_t * dst, const wchar_t * src, size_t n);
   1.279 +IMPORT_C int wcscasecmp(const wchar_t *s1, const wchar_t *s2);
   1.280 +IMPORT_C wchar_t *wcsdup (const wchar_t *srcwcs);
   1.281 +IMPORT_C int wcsncasecmp(const wchar_t *s1, const wchar_t *s2, size_t n);
   1.282 +IMPORT_C size_t wcsnlen(const wchar_t *s, size_t maxlen);
   1.283 +
   1.284 +IMPORT_C wchar_t* wrealpath (const wchar_t* , wchar_t* );
   1.285 +IMPORT_C int wrmdir (const wchar_t *);
   1.286 +IMPORT_C int wstat (const wchar_t *name, struct stat *st);
   1.287 +IMPORT_C int wsystem (const wchar_t* );
   1.288 +IMPORT_C int wunlink (const wchar_t *);
   1.289 +IMPORT_C FILE* wpopen( const wchar_t* command, const wchar_t* mode );
   1.290 +
   1.291 +IMPORT_C int wopen(const wchar_t *, int, ...);
   1.292 +IMPORT_C FILE 	*wfopen(const wchar_t * __restrict,	const wchar_t * __restrict);
   1.293 +IMPORT_C int wrename (const wchar_t *oldpath, const wchar_t *newpath);
   1.294 +IMPORT_C int wchdir (const wchar_t *_path);
   1.295 +IMPORT_C int wchmod (const wchar_t *_path, mode_t _mode);
   1.296 +IMPORT_C  wchar_t* wgetcwd (wchar_t *_buf, size_t _size);
   1.297 +IMPORT_C int wmkdir (const wchar_t *_path, mode_t _mode);
   1.298 +IMPORT_C int wclosedir (WDIR *dp);
   1.299 +IMPORT_C struct wdirent *wreaddir (WDIR *dp);
   1.300 +IMPORT_C void wrewinddir (WDIR *dp);
   1.301 +IMPORT_C int waccess(const wchar_t *fn, int flags);
   1.302 +IMPORT_C int wcreat(const wchar_t* file, mode_t mode);
   1.303 +IMPORT_C void wseekdir(WDIR *dp,off_t index);
   1.304 +IMPORT_C  off_t wtelldir(const WDIR *dp);
   1.305 +IMPORT_C WDIR *wopendir (const wchar_t *_path);
   1.306 +
   1.307 +#define _wcsupr(wcs) 						wcsupr(wcs)
   1.308 +#define _wcslwr(wcs) 						wcslwr(wcs)
   1.309 +#define _wcsset(wcs, wc) 				wcsset(wcs,wc)
   1.310 +#define _wcsnset(wcs, wc, size) 	wcsnset(wcs, wc, size)
   1.311 +#define _wcsrev(wcs) 						wcsrev(wcs)
   1.312 +#define _wcsicmp(wcs1, wcs2) 		wcsicmp(wcs1, wcs2)
   1.313 +#define _wstrdate(datestr) 			wstrdate(datestr)
   1.314 +#define _wstrtime(timestr) 			wstrtime(timestr)
   1.315 +
   1.316 +IMPORT_C wchar_t* wcsupr(wchar_t *wcs);
   1.317 +IMPORT_C wchar_t* wcslwr(wchar_t *wcs);
   1.318 +IMPORT_C wchar_t* wcsset (wchar_t* wcs, wchar_t wc);
   1.319 +IMPORT_C wchar_t* wcsnset (wchar_t* wcs, wchar_t wc, size_t maxSize);
   1.320 +IMPORT_C wchar_t* wcsrev(wchar_t *wcs);
   1.321 +IMPORT_C int wcsicmp(const wchar_t* wcs1,const wchar_t * wcs2);
   1.322 +IMPORT_C wchar_t* wstrdate( const wchar_t *dateStr );
   1.323 +IMPORT_C wchar_t* wstrtime(const wchar_t *timeStr);
   1.324 +IMPORT_C FILE * wfdopen (int fd, const wchar_t *mode);
   1.325 +IMPORT_C FILE * wfreopen(const wchar_t * file,const wchar_t * mode,FILE *fp);	
   1.326 +IMPORT_C wchar_t* getws(wchar_t* str);
   1.327 +IMPORT_C int wremove(const wchar_t *file);
   1.328 +IMPORT_C int putws(wchar_t* str);
   1.329 +
   1.330 +struct _wfinddata_t 
   1.331 +{
   1.332 +    unsigned    attrib;
   1.333 +    time_t      time_create;    /* -1 for symbian */
   1.334 +    time_t      time_access;    /* -1 for symbian*/
   1.335 +    time_t      time_write;
   1.336 +    size_t    	size;
   1.337 +    wchar_t     name[260];
   1.338 +};
   1.339 +
   1.340 +#define _A_ARCH   0x0020		//Archive. Set whenever the file is changed and cleared by the BACKUP command. Value: 0x20.
   1.341 +#define _A_HIDDEN 0x0002 		//Hidden file. Not normally seen with the DIR command, unless the /AH option is used. Returns information about normal files and files with this attribute. Value: 0x02.
   1.342 +#define _A_NORMAL 0x0000	//Normal. File has no other attributes set and can be read or written to without restriction. Value: 0x00.
   1.343 +#define _A_RDONLY 0x0001		//Read-only. File cannot be opened for writing and a file with the same name cannot be created. Value: 0x01.
   1.344 +#define _A_SYSTEM  0x0004		//System file. Not normally seen with the DIR command, unless the /A or /A:S option is used
   1.345 +
   1.346 +IMPORT_C size_t	wcslcat(wchar_t *, const wchar_t *, size_t);
   1.347 +IMPORT_C size_t	 wcslcpy(wchar_t *, const wchar_t *, size_t);
   1.348 +IMPORT_C wchar_t *wasctime(const struct tm *);
   1.349 +IMPORT_C wchar_t *wctime(const time_t *);
   1.350 +IMPORT_C wchar_t *wsetlocale(int, const wchar_t *);
   1.351 +IMPORT_C void wperror(const wchar_t *);
   1.352 +IMPORT_C wchar_t*	wcserror(int num);
   1.353 +IMPORT_C int wfindnext(intptr_t, struct _wfinddata_t *); 
   1.354 +IMPORT_C intptr_t wfindfirst(const wchar_t* , struct _wfinddata_t* );
   1.355 +IMPORT_C	int findclose( intptr_t handle);
   1.356 +
   1.357 +#define snwprintf swprintf
   1.358 +#define vsnwprintf vswprintf
   1.359 +
   1.360 +IMPORT_C int wcsnicmp (const wchar_t *wcs1, const wchar_t *wcs2, size_t n);
   1.361 +IMPORT_C int wcsicoll(const wchar_t *wcs1, const wchar_t *wcs2);
   1.362 +IMPORT_C int wcsncoll(const wchar_t* wcs1, const wchar_t* wcs2, size_t n);
   1.363 +IMPORT_C int wcsnicoll(const wchar_t* wcs1, const wchar_t* wcs2, size_t n);
   1.364 +IMPORT_C wchar_t* wtmpnam(wchar_t *s);
   1.365 +
   1.366 +#endif //__SYMBIAN32__
   1.367 +__END_DECLS
   1.368 +
   1.369 +#ifdef __cplusplus
   1.370 +}
   1.371 +#endif //__cplusplus
   1.372 +#endif /* !_WCHAR_H_ */