utf8proc_decompose_char

Function utf8proc_decompose_char 

Source
pub unsafe extern "C" fn utf8proc_decompose_char(
    codepoint: utf8proc_int32_t,
    dst: *mut utf8proc_int32_t,
    bufsize: utf8proc_ssize_t,
    options: utf8proc_option_t,
    last_boundclass: *mut c_int,
) -> utf8proc_ssize_t
Expand description

Decompose a codepoint into an array of codepoints.

@param codepoint the codepoint. @param dst the destination buffer. @param bufsize the size of the destination buffer. @param options one or more of the following flags:

  • @ref UTF8PROC_REJECTNA - return an error codepoint is unassigned
  • @ref UTF8PROC_IGNORE - strip “default ignorable” codepoints
  • @ref UTF8PROC_CASEFOLD - apply Unicode casefolding
  • @ref UTF8PROC_COMPAT - replace certain codepoints with their compatibility decomposition
  • @ref UTF8PROC_CHARBOUND - insert 0xFF bytes before each grapheme cluster
  • @ref UTF8PROC_LUMP - lump certain different codepoints together
  • @ref UTF8PROC_STRIPMARK - remove all character marks
  • @ref UTF8PROC_STRIPNA - remove unassigned codepoints @param last_boundclass Pointer to an integer variable containing the previous codepoint’s (boundclass + indic_conjunct_break << 1) if the @ref UTF8PROC_CHARBOUND option is used. If the string is being processed in order, this can be initialized to 0 for the beginning of the string, and is thereafter updated automatically. Otherwise, this parameter is ignored.

@return In case of success, the number of codepoints written is returned; in case of an error, a negative error code is returned (utf8proc_errmsg()). @par If the number of written codepoints would be bigger than bufsize, the required buffer size is returned, while the buffer will be overwritten with undefined data.