libunibreak 6.1
|
Header file for private definitions in the libunibreak library. More...
Go to the source code of this file.
Macros | |
#define | ARRAY_LEN(x) (sizeof(x) / sizeof(x[0])) |
#define | EOS 0xFFFFFFFF |
Constant value to mark the end of string. | |
Typedefs | |
typedef utf32_t(* | get_next_char_t) (const void *, size_t, size_t *) |
Abstract function interface for ub_get_next_char_utf8, ub_get_next_char_utf16, and ub_get_next_char_utf32. | |
Functions | |
utf32_t | ub_get_next_char_utf8 (const utf8_t *s, size_t len, size_t *ip) |
Gets the next Unicode character in a UTF-8 sequence. | |
utf32_t | ub_get_next_char_utf16 (const utf16_t *s, size_t len, size_t *ip) |
Gets the next Unicode character in a UTF-16 sequence. | |
utf32_t | ub_get_next_char_utf32 (const utf32_t *s, size_t len, size_t *ip) |
Gets the next Unicode character in a UTF-32 sequence. | |
__inline const void * | ub_bsearch (utf32_t ch, const void *ptr, size_t count, size_t size) |
Header file for private definitions in the libunibreak library.
#define ARRAY_LEN | ( | x | ) | (sizeof(x) / sizeof(x[0])) |
#define EOS 0xFFFFFFFF |
Constant value to mark the end of string.
It is not a valid Unicode character.
typedef utf32_t(* get_next_char_t) (const void *, size_t, size_t *) |
Abstract function interface for ub_get_next_char_utf8, ub_get_next_char_utf16, and ub_get_next_char_utf32.
__inline const void * ub_bsearch | ( | utf32_t | ch, |
const void * | ptr, | ||
size_t | count, | ||
size_t | size | ||
) |
Gets the next Unicode character in a UTF-16 sequence.
The index will be advanced to the next complete character, unless the end of string is reached in the middle of a UTF-16 surrogate pair.
[in] | s | input UTF-16 string |
[in] | len | length of the string in words |
[in,out] | ip | pointer to the index |
Gets the next Unicode character in a UTF-32 sequence.
The index will be advanced to the next character.
[in] | s | input UTF-32 string |
[in] | len | length of the string in dwords |
[in,out] | ip | pointer to the index |
Gets the next Unicode character in a UTF-8 sequence.
The index will be advanced to the next complete character, unless the end of string is reached in the middle of a UTF-8 sequence.
[in] | s | input UTF-8 string |
[in] | len | length of the string in bytes |
[in,out] | ip | pointer to the index |