]> git.proxmox.com Git - mirror_edk2.git/blobdiff - StdLib/Include/wchar.h
StdLib: Remove EfiSocketLib and Ip4Config Protocol dependency.
[mirror_edk2.git] / StdLib / Include / wchar.h
index d8e15caa403b783aff09140040d9a765ddd9144b..3acc2a4b8d99e9b268d4697edfc85e89bfa7f555 100644 (file)
               - WEOF might not be negative.\r
               - mbstate_t objects are not intended to be inspected by programs.\r
 \r
-    Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>\r
+    Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>\r
     This program and the accompanying materials are licensed and made available under\r
     the terms and conditions of the BSD License that accompanies this distribution.\r
     The full text of the license may be found at\r
@@ -913,7 +913,7 @@ wint_t fgetwc(FILE *Stream);
     @param[out] S         A pointer to the array to receive the input string.\r
     @param[in]  Limit     The maximum number of characters to put into Buff,\r
                           including the terminating null character.\r
-    @param[in]  Stream    An input stream from which to obtain a character.\r
+    @param[in]  Stream    An input stream from which to obtain the string.\r
 \r
     @return   The fgetws function returns S if successful. If end-of-file is\r
               encountered and no characters have been read into the array, the\r
@@ -1089,7 +1089,7 @@ by the value of base, and a final wide string of one or more unrecognized wide
 characters, including the terminating null wide character of the input wide string. Then,\r
 they attempt to convert the subject sequence to an integer, and return the result.\r
 \r
-    @param[in]  Nptr    Pointer to the string to convert to a floating-point value.\r
+    @param[in]  Nptr    Pointer to the string to convert.\r
     @param[in]  EndPtr  Optional pointer to an object in which to store a pointer\r
                         to the final wide string.\r
     @param[in]  Base    Base, 0 to 36, of the value represented by the string\r
@@ -1415,12 +1415,18 @@ int mbsinit(const mbstate_t *ps);
     where internal is the mbstate_t object for the mbrlen function, except that\r
     the expression designated by ps is evaluated only once.\r
 \r
-    @return   The mbrlen function returns a value between zero and n,\r
-              inclusive, (size_t)(-2), or (size_t)(-1).\r
+    @param[in]  s     Pointer to a multibyte character sequence.\r
+    @param[in]  n     Maximum number of bytes to examine.\r
+    @param[in]  pS    Pointer to the conversion state object.\r
+\r
+    @retval   0       The next n or fewer characters complete a NUL.\r
+    @retval   1..n    The number of bytes that complete the multibyte character.\r
+    @retval   -2      The next n bytes contribute to an incomplete (but potentially valid) multibyte character.\r
+    @retval   -1      An encoding error occurred.\r
 **/\r
-size_t mbrlen(const char * __restrict S, size_t n, mbstate_t * __restrict ps);\r
+size_t mbrlen(const char * __restrict S, size_t n, mbstate_t * __restrict pS);\r
 \r
-/**\r
+/** Restartable Multibyte to Wide character conversion.\r
 If S is a null pointer, the mbrtowc function is equivalent to the call:<BR>\r
 @verbatim\r
         mbrtowc(NULL, "", 1, ps)\r
@@ -1476,22 +1482,27 @@ to restore the initial shift state; the resulting state described is the initial
 **/\r
 size_t wcrtomb(char * __restrict S, wchar_t wc, mbstate_t * __restrict ps);\r
 \r
-/**\r
-The mbsrtowcs function converts a sequence of multibyte characters that begins in the\r
-conversion state described by the object pointed to by ps, from the array indirectly\r
-pointed to by src into a sequence of corresponding wide characters. If dst is not a null\r
-pointer, the converted characters are stored into the array pointed to by dst. Conversion\r
-continues up to and including a terminating null character, which is also stored.\r
-Conversion stops earlier in two cases: when a sequence of bytes is encountered that does\r
-not form a valid multibyte character, or (if dst is not a null pointer) when len wide\r
-characters have been stored into the array pointed to by dst. Each conversion takes\r
-place as if by a call to the mbrtowc function.\r
-\r
-If dst is not a null pointer, the pointer object pointed to by src is assigned either a null\r
-pointer (if conversion stopped due to reaching a terminating null character) or the address\r
-just past the last multibyte character converted (if any). If conversion stopped due to\r
-reaching a terminating null character and if dst is not a null pointer, the resulting state\r
-described is the initial conversion state.\r
+/** Convert a sequence of multibyte characters into a sequence of wide characters.\r
+    The mbsrtowcs function converts a sequence of multibyte characters that begins in the\r
+    conversion state described by the object pointed to by ps, from the array indirectly\r
+    pointed to by src into a sequence of corresponding wide characters. If dst is not a null\r
+    pointer, the converted characters are stored into the array pointed to by dst. Conversion\r
+    continues up to and including a terminating null character, which is also stored.\r
+    Conversion stops earlier in two cases: when a sequence of bytes is encountered that does\r
+    not form a valid multibyte character, or (if dst is not a null pointer) when len wide\r
+    characters have been stored into the array pointed to by dst. Each conversion takes\r
+    place as if by a call to the mbrtowc function.\r
+\r
+    If dst is not a null pointer, the pointer object pointed to by src is assigned either a null\r
+    pointer (if conversion stopped due to reaching a terminating null character) or the address\r
+    just past the last multibyte character converted (if any). If conversion stopped due to\r
+    reaching a terminating null character and if dst is not a null pointer, the resulting state\r
+    described is the initial conversion state.\r
+\r
+    @param[in]    dst   Destination for the Wide character sequence.\r
+    @param[in]    src   Pointer to Pointer to MBCS char. sequence to convert.\r
+    @param[in]    len   Length of dest, in WIDE characters.\r
+    @param[in]    ps    Pointer to the conversion state object to be used for this conversion.\r
 \r
     @return   If the input conversion encounters a sequence of bytes that do\r
               not form a valid multibyte character, an encoding error occurs:\r
@@ -1523,6 +1534,11 @@ size_t mbsrtowcs(wchar_t * __restrict dst, const char ** __restrict src, size_t
     terminating null wide character, the resulting state described is the\r
     initial conversion state.\r
 \r
+    @param[in]    dst   Destination for the MBCS sequence.\r
+    @param[in]    src   Pointer to Pointer to wide char. sequence to convert.\r
+    @param[in]    len   Length of dest, in bytes.\r
+    @param[in]    ps    Pointer to the conversion state object to be used for this conversion.\r
+\r
     @return     If conversion stops because a wide character is reached that\r
                 does not correspond to a valid multibyte character, an\r
                 encoding error occurs: the wcsrtombs function stores the\r