Changeset View
Changeset View
Standalone View
Standalone View
source/blender/blenlib/BLI_string_utf8.h
| Show All 20 Lines | |||||
| * \ingroup bli | * \ingroup bli | ||||
| */ | */ | ||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||
| extern "C" { | extern "C" { | ||||
| #endif | #endif | ||||
| #include "BLI_compiler_attrs.h" | #include "BLI_compiler_attrs.h" | ||||
| #include "BLI_sys_types.h" | |||||
| char *BLI_strncpy_utf8(char *__restrict dst, const char *__restrict src, size_t maxncpy) | char *BLI_strncpy_utf8(char *__restrict dst, const char *__restrict src, size_t maxncpy) | ||||
| ATTR_NONNULL(); | ATTR_NONNULL(); | ||||
| size_t BLI_strncpy_utf8_rlen(char *__restrict dst, const char *__restrict src, size_t maxncpy) | size_t BLI_strncpy_utf8_rlen(char *__restrict dst, const char *__restrict src, size_t maxncpy) | ||||
| ATTR_NONNULL(); | ATTR_NONNULL(); | ||||
| char *BLI_strncat_utf8(char *__restrict dst, const char *__restrict src, size_t maxncpy) | char *BLI_strncat_utf8(char *__restrict dst, const char *__restrict src, size_t maxncpy) | ||||
| ATTR_NONNULL(); | ATTR_NONNULL(); | ||||
| ptrdiff_t BLI_utf8_invalid_byte(const char *str, size_t length) ATTR_NONNULL(); | ptrdiff_t BLI_utf8_invalid_byte(const char *str, size_t length) ATTR_NONNULL(); | ||||
| int BLI_utf8_invalid_strip(char *str, size_t length) ATTR_NONNULL(); | int BLI_utf8_invalid_strip(char *str, size_t length) ATTR_NONNULL(); | ||||
| /* warning, can return -1 on bad chars */ | /* warning, can return -1 on bad chars */ | ||||
| int BLI_str_utf8_size(const char *p) ATTR_NONNULL(); | int BLI_str_utf8_size(const char *p) ATTR_NONNULL(); | ||||
| int BLI_str_utf8_size_safe(const char *p) ATTR_NONNULL(); | int BLI_str_utf8_size_safe(const char *p) ATTR_NONNULL(); | ||||
| /* copied from glib */ | /* copied from glib */ | ||||
| unsigned int BLI_str_utf8_as_unicode(const char *p) ATTR_NONNULL(); | unsigned int BLI_str_utf8_as_unicode(const char *p) ATTR_NONNULL(); | ||||
| unsigned int BLI_str_utf8_as_unicode_and_size(const char *__restrict p, size_t *__restrict index) | unsigned int BLI_str_utf8_as_unicode_and_size(const char *__restrict p, size_t *__restrict index) | ||||
| ATTR_NONNULL(); | ATTR_NONNULL(); | ||||
| unsigned int BLI_str_utf8_as_unicode_and_size_safe(const char *__restrict p, | unsigned int BLI_str_utf8_as_unicode_and_size_safe(const char *__restrict p, | ||||
| size_t *__restrict index) ATTR_NONNULL(); | size_t *__restrict index) ATTR_NONNULL(); | ||||
| unsigned int BLI_str_utf8_as_unicode_step(const char *__restrict p, size_t *__restrict index) | unsigned int BLI_str_utf8_as_unicode_step(const char *__restrict p, size_t *__restrict index) | ||||
| ATTR_NONNULL(); | ATTR_NONNULL(); | ||||
| size_t BLI_str_utf8_from_unicode(unsigned int c, char *outbuf); | size_t BLI_str_utf8_from_unicode(unsigned int c, char *outbuf); | ||||
| size_t BLI_str_utf8_as_utf32(char32_t *__restrict dst_w, | |||||
| const char *__restrict src_c, | |||||
| const size_t maxncpy) ATTR_NONNULL(); | |||||
| size_t BLI_str_utf32_as_utf8(char *__restrict dst, | |||||
| const char32_t *__restrict src, | |||||
| const size_t maxncpy) ATTR_NONNULL(); | |||||
| size_t BLI_str_utf32_as_utf8_len(const char32_t *src) ATTR_NONNULL(); | |||||
| char *BLI_str_find_prev_char_utf8(const char *str, const char *p) ATTR_NONNULL(); | char *BLI_str_find_prev_char_utf8(const char *str, const char *p) ATTR_NONNULL(); | ||||
| char *BLI_str_find_next_char_utf8(const char *p, const char *end) ATTR_NONNULL(1); | char *BLI_str_find_next_char_utf8(const char *p, const char *end) ATTR_NONNULL(1); | ||||
| char *BLI_str_prev_char_utf8(const char *p) ATTR_NONNULL(); | char *BLI_str_prev_char_utf8(const char *p) ATTR_NONNULL(); | ||||
| /* wchar_t functions, copied from blenders own font.c originally */ | /* wchar_t functions, copied from blenders own font.c originally */ | ||||
| size_t BLI_wstrlen_utf8(const wchar_t *src) ATTR_NONNULL(); | size_t BLI_wstrlen_utf8(const wchar_t *src) ATTR_NONNULL(); | ||||
| size_t BLI_strlen_utf8_ex(const char *strc, size_t *r_len_bytes) ATTR_NONNULL(); | size_t BLI_strlen_utf8_ex(const char *strc, size_t *r_len_bytes) ATTR_NONNULL(); | ||||
| size_t BLI_strlen_utf8(const char *strc) ATTR_NONNULL(); | size_t BLI_strlen_utf8(const char *strc) ATTR_NONNULL(); | ||||
| size_t BLI_strnlen_utf8_ex(const char *strc, const size_t maxlen, size_t *r_len_bytes) | size_t BLI_strnlen_utf8_ex(const char *strc, const size_t maxlen, size_t *r_len_bytes) | ||||
| ATTR_NONNULL(); | ATTR_NONNULL(); | ||||
| size_t BLI_strnlen_utf8(const char *strc, const size_t maxlen) ATTR_NONNULL(); | size_t BLI_strnlen_utf8(const char *strc, const size_t maxlen) ATTR_NONNULL(); | ||||
| size_t BLI_strncpy_wchar_as_utf8(char *__restrict dst, | size_t BLI_strncpy_wchar_as_utf8(char *__restrict dst, | ||||
| const wchar_t *__restrict src, | const wchar_t *__restrict src, | ||||
| const size_t maxcpy) ATTR_NONNULL(); | const size_t maxcpy) ATTR_NONNULL(); | ||||
| size_t BLI_strncpy_wchar_from_utf8(wchar_t *__restrict dst, | size_t BLI_strncpy_wchar_from_utf8(wchar_t *__restrict dst, | ||||
| const char *__restrict src, | const char *__restrict src, | ||||
| const size_t maxcpy) ATTR_NONNULL(); | const size_t maxcpy) ATTR_NONNULL(); | ||||
| /* count columns that character/string occupies, based on wcwidth.c */ | /* count columns that character/string occupies, based on wcwidth.c */ | ||||
| int BLI_wcwidth(wchar_t ucs); | int BLI_wcwidth(char32_t ucs); | ||||
| int BLI_wcswidth(const wchar_t *pwcs, size_t n) ATTR_NONNULL(); | int BLI_wcswidth(const char32_t *pwcs, size_t n) ATTR_NONNULL(); | ||||
| /* warning, can return -1 on bad chars */ | /* warning, can return -1 on bad chars */ | ||||
| int BLI_str_utf8_char_width(const char *p) ATTR_NONNULL(); | int BLI_str_utf8_char_width(const char *p) ATTR_NONNULL(); | ||||
| int BLI_str_utf8_char_width_safe(const char *p) ATTR_NONNULL(); | int BLI_str_utf8_char_width_safe(const char *p) ATTR_NONNULL(); | ||||
| size_t BLI_str_partition_utf8(const char *str, | size_t BLI_str_partition_utf8(const char *str, | ||||
| const unsigned int delim[], | const unsigned int delim[], | ||||
| const char **sep, | const char **sep, | ||||
| const char **suf) ATTR_NONNULL(); | const char **suf) ATTR_NONNULL(); | ||||
| Show All 33 Lines | |||||