utf8proc_reencode

Reencodes the sequence of length codepoints pointed to by buffer UTF-8 data in-place (i.e., the result is also stored in buffer). Can optionally normalize the UTF-32 sequence prior to UTF-8 conversion.

@param buffer the (native-endian UTF-32) unicode codepoints to re-encode. @param length the length (in codepoints) of the buffer. @param options a bitwise or (|) of one or more of the following flags: - @ref UTF8PROC_NLF2LS - convert LF, CRLF, CR and NEL into LS - @ref UTF8PROC_NLF2PS - convert LF, CRLF, CR and NEL into PS - @ref UTF8PROC_NLF2LF - convert LF, CRLF, CR and NEL into LF - @ref UTF8PROC_STRIPCC - strip or convert all non-affected control characters - @ref UTF8PROC_COMPOSE - try to combine decomposed codepoints into composite codepoints - @ref UTF8PROC_STABLE - prohibit combining characters that would violate the unicode versioning stability - @ref UTF8PROC_CHARBOUND - insert 0xFF bytes before each grapheme cluster

@return In case of success, the length (in bytes) of the resulting nul-terminated UTF-8 string is returned; otherwise, a negative error code is returned (@ref utf8proc_errmsg).

@warning The amount of free space pointed to by buffer must exceed the amount of the input data by one byte, and the entries of the array pointed to by str have to be in the range 0x0000 to 0x10FFFF. Otherwise, the program might crash!

version(DerelictUTF8Proc_Static)extern
utf8proc_ssize_t
utf8proc_reencode
(
utf8proc_int32_t* buffer
,
utf8proc_ssize_t length
,
)

Meta