diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2007-07-04 16:18:34 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2007-07-04 16:18:34 +0000 |
commit | a37215120b3461103df702186805a3d4a88d5b77 (patch) | |
tree | 2d9d2c8b51f03b23f2e9c22aa10e0d54077c464e /newlib/libc/string/wcsxfrm.c | |
parent | c467d17e7c0aa05e3087c462954ee942a479c197 (diff) | |
download | cygnal-a37215120b3461103df702186805a3d4a88d5b77.tar.gz cygnal-a37215120b3461103df702186805a3d4a88d5b77.tar.bz2 cygnal-a37215120b3461103df702186805a3d4a88d5b77.zip |
* libc/include/wchar.h: Add prototype for wcsxfrm.
* libc/string/Makefile.am (GENERAL_SOURCES): Add wcsxfrm.c.
(CHEWOUT_FILES): Add wcsxfrm.def.
* libc/string/Makefile.in: Regenerate.
* libc/string/wcsxfrm.c: New file.
* libc/string/wcstrings.tex: Add wcsxfrm.
Diffstat (limited to 'newlib/libc/string/wcsxfrm.c')
-rw-r--r-- | newlib/libc/string/wcsxfrm.c | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/newlib/libc/string/wcsxfrm.c b/newlib/libc/string/wcsxfrm.c new file mode 100644 index 000000000..439bdd036 --- /dev/null +++ b/newlib/libc/string/wcsxfrm.c @@ -0,0 +1,52 @@ +/* +FUNCTION + <<wcsxfrm>>---locale-specific wide-character string transformation + +INDEX + wcsxfrm + +ANSI_SYNOPSIS + #include <wchar.h> + int wcsxfrm(wchar_t *<[stra]>, const wchar_t * <[strb]>, size_t <[n]>); + +TRAD_SYNOPSIS + #include <wchar.h> + size_t wcsxfrm(<[stra]>, <[strb]>, <[n]>) + wchar_t *<[stra]>; + wchar_t *<[strb]>; + size_t <[n]> + +DESCRIPTION + <<wcsxfrm>> transforms the wide-character string pointed to by + <[strb]> to the wide-character string pointed to by <[stra]>, + Comparing two transformed wide strings with <<wcscmp>> should return + the same result as comparing the original strings with <<wcscoll>>. + No more than <[n]> wide characters are transformed, including the + trailing null character. + + If <[n]> is 0, <[stra]> may be a NULL pointer. + + The current implementation of <<wcsxfrm>> simply uses <<wcslcpy>> + and does not support any language-specific transformations. + +RETURNS + <<wcsxfrm>> returns the length of the transformed wide character + string. if the return value is greater or equal to <[n]>, the + content of <[stra]> is undefined. + +PORTABILITY +<<wcsxfrm>> is ISO/IEC 9899/AMD1:1995 (ISO C). +*/ + +#include <_ansi.h> +#include <wchar.h> + +size_t +_DEFUN (wcsxfrm, (a, b, n), + wchar_t *a _AND + _CONST wchar_t *b _AND + size_t n) + +{ + return wcslcpy (a, b, n); +} |