Skip to content

mdz_utf32_insertUtf32_string_async

Maksym Dzyubenko edited this page Feb 7, 2024 · 1 revision

Insert UTF-32 string pUtf32Source in string. Size grows on nCount. Length grows on symbols count.
String reserved area and pUtf32Source->m_pData should not overlap.
This function performs significantly better than mdz_utf32_insertUtf32_async() - because there is no additional validation of inserted string.

mdz_bool mdz_utf32_insertUtf32_string_async(
  struct mdz_Utf32* pUtf32,
  size_t nLeftPos,
  const struct mdz_Utf32* pUtf32Source,
  mdz_bool bReserve,
  struct mdz_asyncData* pAsyncData);

Synchronous version:
mdz_utf32_insertUtf32_string(pUtf32, nLeftPos, pUtf32Source, bReserve);

Parameter Description
pUtf32 pointer to string returned by mdz_utf32_create() or mdz_utf32_create_attached()
nLeftPos 0-based position to insert in symbols. If nLeftPos == Length or -1, items are appended. nLeftPos > Length is not allowed
pUtf32Source pointer to UTF-32 string to insert. String is returned by mdz_utf32_create() or mdz_utf32_create_attached()
bReserve if mdz_true reserve capacity when there is not enough space for insertion, otherwise mdz_false
pAsyncData pointer to shared async data for asynchronous call, or NULL if call should be synchronous
Return Description
mdz_false if pUtf32 == NULL
mdz_false if bReserve == mdz_true and memory allocation failed (MDZ_ERROR_ALLOCATION)
mdz_false if bReserve == mdz_true and there is not enough capacity for inserted data, but m_pData is attached using mdz_utf32_attachData() (MDZ_ERROR_ATTACHED)
mdz_false if bReserve == mdz_false and there is not enough free Capacity in the string (MDZ_ERROR_CAPACITY)
mdz_false if invalid enEndianness (MDZ_ERROR_ENDIANNESS)
mdz_false if string reserved area and pUtf32Source->m_pData overlap (MDZ_ERROR_OVERLAP)
mdz_true if pUtf32Source == NULL (MDZ_ERROR_SOURCE), or pUtf32Source.Size == 0 (MDZ_ERROR_ZEROCOUNT), or nLeftPos > Length (MDZ_ERROR_BIGLEFT). No insertion is made
mdz_true insertion succeeded
mdz_utf32 API Reference is generated using mdzApiRefGenerator.

mdz_string functions

mdz_ansi functions

mdz_utf8 functions

mdz_wchar functions

mdz_utf16 functions

mdz_utf32 functions

mdz_string API Reference is generated using mdzApiRefGenerator.
Clone this wiki locally