|
Blender V4.3
|
#include <inttypes.h>#include <stdarg.h>#include "BLI_compiler_attrs.h"#include "BLI_utildefines.h"Go to the source code of this file.
Macros | |
| #define | BLI_STR_FORMAT_UINT64_GROUPED_SIZE 27 |
| #define | BLI_STR_FORMAT_INT32_GROUPED_SIZE 15 |
| #define | BLI_STR_FORMAT_INT64_BYTE_UNIT_SIZE 15 |
| #define | BLI_STR_FORMAT_INT64_BYTE_UNIT_COMPACT_SIZE 5 |
| #define | BLI_STR_FORMAT_INT32_DECIMAL_UNIT_SIZE 7 |
| #define | BLI_STR_FORMAT_INT32_INTEGER_UNIT_SIZE 5 |
String Copy/Format Macros | |
Avoid repeating destination with
| |
| #define | STRNCPY(dst, src) BLI_strncpy(dst, src, ARRAY_SIZE(dst)) |
| #define | STRNCPY_RLEN(dst, src) BLI_strncpy_rlen(dst, src, ARRAY_SIZE(dst)) |
| #define | SNPRINTF(dst, format, ...) BLI_snprintf(dst, ARRAY_SIZE(dst), format, __VA_ARGS__) |
| #define | SNPRINTF_RLEN(dst, format, ...) BLI_snprintf_rlen(dst, ARRAY_SIZE(dst), format, __VA_ARGS__) |
| #define | VSNPRINTF(dst, format, args) BLI_vsnprintf(dst, ARRAY_SIZE(dst), format, args) |
| #define | VSNPRINTF_RLEN(dst, format, args) BLI_vsnprintf_rlen(dst, ARRAY_SIZE(dst), format, args) |
| #define | STR_CONCAT(dst, len, suffix) len += BLI_strncpy_rlen(dst + len, suffix, ARRAY_SIZE(dst) - len) |
| #define | STR_CONCATF(dst, len, format, ...) len += BLI_snprintf_rlen(dst + len, ARRAY_SIZE(dst) - len, format, __VA_ARGS__) |
Equal to Any Element (STR_ELEM) Macro | |
Follows ELEM macro convention. | |
| #define | _VA_STR_ELEM2(v, a) (strcmp(v, a) == 0) |
| #define | _VA_STR_ELEM3(v, a, b) (_VA_STR_ELEM2(v, a) || (_VA_STR_ELEM2(v, b))) |
| #define | _VA_STR_ELEM4(v, a, b, c) (_VA_STR_ELEM3(v, a, b) || (_VA_STR_ELEM2(v, c))) |
| #define | _VA_STR_ELEM5(v, a, b, c, d) (_VA_STR_ELEM4(v, a, b, c) || (_VA_STR_ELEM2(v, d))) |
| #define | _VA_STR_ELEM6(v, a, b, c, d, e) (_VA_STR_ELEM5(v, a, b, c, d) || (_VA_STR_ELEM2(v, e))) |
| #define | _VA_STR_ELEM7(v, a, b, c, d, e, f) (_VA_STR_ELEM6(v, a, b, c, d, e) || (_VA_STR_ELEM2(v, f))) |
| #define | _VA_STR_ELEM8(v, a, b, c, d, e, f, g) (_VA_STR_ELEM7(v, a, b, c, d, e, f) || (_VA_STR_ELEM2(v, g))) |
| #define | _VA_STR_ELEM9(v, a, b, c, d, e, f, g, h) (_VA_STR_ELEM8(v, a, b, c, d, e, f, g) || (_VA_STR_ELEM2(v, h))) |
| #define | _VA_STR_ELEM10(v, a, b, c, d, e, f, g, h, i) (_VA_STR_ELEM9(v, a, b, c, d, e, f, g, h) || (_VA_STR_ELEM2(v, i))) |
| #define | _VA_STR_ELEM11(v, a, b, c, d, e, f, g, h, i, j) (_VA_STR_ELEM10(v, a, b, c, d, e, f, g, h, i) || (_VA_STR_ELEM2(v, j))) |
| #define | _VA_STR_ELEM12(v, a, b, c, d, e, f, g, h, i, j, k) (_VA_STR_ELEM11(v, a, b, c, d, e, f, g, h, i, j) || (_VA_STR_ELEM2(v, k))) |
| #define | _VA_STR_ELEM13(v, a, b, c, d, e, f, g, h, i, j, k, l) (_VA_STR_ELEM12(v, a, b, c, d, e, f, g, h, i, j, k) || (_VA_STR_ELEM2(v, l))) |
| #define | _VA_STR_ELEM14(v, a, b, c, d, e, f, g, h, i, j, k, l, m) (_VA_STR_ELEM13(v, a, b, c, d, e, f, g, h, i, j, k, l) || (_VA_STR_ELEM2(v, m))) |
| #define | _VA_STR_ELEM15(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n) (_VA_STR_ELEM14(v, a, b, c, d, e, f, g, h, i, j, k, l, m) || (_VA_STR_ELEM2(v, n))) |
| #define | _VA_STR_ELEM16(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) (_VA_STR_ELEM15(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n) || (_VA_STR_ELEM2(v, o))) |
| #define | _VA_STR_ELEM17(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) (_VA_STR_ELEM16(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) || (_VA_STR_ELEM2(v, p))) |
| #define | STR_ELEM(...) VA_NARGS_CALL_OVERLOAD(_VA_STR_ELEM, __VA_ARGS__) |
String Debugging | |
| #define | BLI_string_debug_size(str, str_maxncpy) |
| #define | BLI_string_debug_size_after_nil(str, str_maxncpy) BLI_string_debug_size(str, str_maxncpy) |
Functions | |
| char * | BLI_strdupn (const char *str, size_t len) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1) |
| char * | BLI_strdup (const char *str) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1) ATTR_MALLOC |
| char * | BLI_strdup_null (const char *str) ATTR_WARN_UNUSED_RESULT ATTR_MALLOC |
| char * | BLI_strdupcat (const char *__restrict str1, const char *__restrict str2) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| char * | BLI_strncpy (char *__restrict dst, const char *__restrict src, size_t dst_maxncpy) ATTR_NONNULL(1 |
| char char * | BLI_strncpy_ensure_pad (char *__restrict dst, const char *__restrict src, char pad, size_t dst_maxncpy) ATTR_NONNULL(1 |
| char char size_t | BLI_strncpy_rlen (char *__restrict dst, const char *__restrict src, size_t dst_maxncpy) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| char char size_t char * | BLI_strncat (char *__restrict dst, const char *__restrict src, size_t dst_maxncpy) ATTR_NONNULL(1 |
| char char size_t char const char * | BLI_strchr_or_end (const char *str, char ch) ATTR_WARN_UNUSED_RESULT ATTR_RETURNS_NONNULL ATTR_NONNULL(1) |
| bool | BLI_str_quoted_substr_range (const char *__restrict str, const char *__restrict prefix, int *__restrict r_start, int *__restrict r_end) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| bool bool | BLI_str_quoted_substr (const char *__restrict str, const char *__restrict prefix, char *result, size_t result_maxncpy) |
| size_t | BLI_snprintf (char *__restrict dst, size_t dst_maxncpy, const char *__restrict format,...) ATTR_NONNULL(1 |
| size_t | ATTR_PRINTF_FORMAT (3, 4) |
| size_t | BLI_snprintf_rlen (char *__restrict dst, size_t dst_maxncpy, const char *__restrict format,...) ATTR_NONNULL(1 |
| size_t | BLI_vsnprintf (char *__restrict dst, size_t dst_maxncpy, const char *__restrict format, va_list arg) ATTR_PRINTF_FORMAT(3 |
| size_t size_t | BLI_vsnprintf_rlen (char *__restrict dst, size_t dst_maxncpy, const char *__restrict format, va_list arg) ATTR_PRINTF_FORMAT(3 |
| size_t size_t char * | BLI_sprintfN_with_buffer (char *fixed_buf, size_t fixed_buf_size, size_t *result_len, const char *__restrict format,...) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| size_t size_t char | ATTR_PRINTF_FORMAT (4, 5) |
| char * | BLI_vsprintfN_with_buffer (char *fixed_buf, size_t fixed_buf_size, size_t *result_len, const char *__restrict format, va_list args) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| char | ATTR_PRINTF_FORMAT (4, 0) |
| char * | BLI_sprintfN (const char *__restrict format,...) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1) ATTR_MALLOC ATTR_PRINTF_FORMAT(1 |
| char char * | BLI_vsprintfN (const char *__restrict format, va_list args) ATTR_NONNULL(1 |
| char char ATTR_MALLOC | ATTR_PRINTF_FORMAT (1, 0) |
| size_t | BLI_str_escape (char *__restrict dst, const char *__restrict src, size_t dst_maxncpy) ATTR_NONNULL(1 |
| size_t size_t | BLI_str_unescape_ex (char *__restrict dst, const char *__restrict src, size_t src_maxncpy, size_t dst_maxncpy, bool *r_is_complete) ATTR_NONNULL(1 |
| size_t size_t size_t | BLI_str_unescape (char *__restrict dst, const char *__restrict src, size_t src_maxncpy) ATTR_NONNULL(1 |
| size_t size_t size_t const char * | BLI_str_escape_find_quote (const char *str) ATTR_NONNULL(1) |
| size_t | BLI_str_format_int_grouped (char dst[BLI_STR_FORMAT_INT32_GROUPED_SIZE], int num) ATTR_NONNULL(1) |
| size_t | BLI_str_format_uint64_grouped (char dst[BLI_STR_FORMAT_UINT64_GROUPED_SIZE], uint64_t num) ATTR_NONNULL(1) |
| void | BLI_str_format_byte_unit (char dst[BLI_STR_FORMAT_INT64_BYTE_UNIT_SIZE], long long int bytes, bool base_10) ATTR_NONNULL(1) |
| void | BLI_str_format_byte_unit_compact (char dst[BLI_STR_FORMAT_INT64_BYTE_UNIT_COMPACT_SIZE], long long int bytes, bool base_10) ATTR_NONNULL(1) |
| void | BLI_str_format_decimal_unit (char dst[BLI_STR_FORMAT_INT32_DECIMAL_UNIT_SIZE], int number_to_format) ATTR_NONNULL(1) |
| void | BLI_str_format_integer_unit (char dst[BLI_STR_FORMAT_INT32_INTEGER_UNIT_SIZE], int number_to_format) ATTR_NONNULL(1) |
| int | BLI_strcaseeq (const char *a, const char *b) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| int char * | BLI_strcasestr (const char *s, const char *find) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| int char char * | BLI_strncasestr (const char *s, const char *find, size_t len) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| int char char int | BLI_strcasecmp (const char *s1, const char *s2) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| int char char int int | BLI_strncasecmp (const char *s1, const char *s2, size_t len) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| int char char int int int | BLI_strcasecmp_natural (const char *s1, const char *s2) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| int char char int int int int | BLI_strcmp_ignore_pad (const char *str1, const char *str2, char pad) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| int char char int int int int size_t | BLI_strnlen (const char *str, size_t maxlen) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1) |
| void | BLI_str_tolower_ascii (char *str, size_t len) ATTR_NONNULL(1) |
| void | BLI_str_toupper_ascii (char *str, size_t len) ATTR_NONNULL(1) |
| char | BLI_tolower_ascii (const char c) ATTR_WARN_UNUSED_RESULT |
| char | BLI_toupper_ascii (const char c) ATTR_WARN_UNUSED_RESULT |
| void | BLI_str_rstrip (char *str) ATTR_NONNULL(1) |
| int | BLI_str_rstrip_float_zero (char *str, char pad) ATTR_NONNULL(1) |
| int | BLI_str_rstrip_digits (char *str) ATTR_NONNULL() |
| int | BLI_str_index_in_array_n (const char *__restrict str, const char **__restrict str_array, int str_array_len) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1) |
| int | BLI_str_index_in_array (const char *__restrict str, const char **__restrict str_array) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| int bool | BLI_str_startswith (const char *__restrict str, const char *__restrict start) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| int bool bool | BLI_str_endswith (const char *__restrict str, const char *__restrict end) ATTR_NONNULL(1 |
| int bool bool bool | BLI_strn_endswith (const char *__restrict str, const char *__restrict end, size_t str_len) ATTR_NONNULL(1 |
| int bool bool bool size_t | BLI_str_partition (const char *str, const char delim[], const char **sep, const char **suf) ATTR_NONNULL(1 |
| int bool bool bool size_t size_t | BLI_str_rpartition (const char *str, const char delim[], const char **sep, const char **suf) ATTR_NONNULL(1 |
| int bool bool bool size_t size_t size_t | BLI_str_partition_ex (const char *str, const char *end, const char delim[], const char **sep, const char **suf, bool from_right) ATTR_NONNULL(1 |
| int bool bool bool size_t size_t size_t int | BLI_string_max_possible_word_count (int str_len) ATTR_WARN_UNUSED_RESULT |
| bool | BLI_string_has_word_prefix (const char *haystack, const char *needle, size_t needle_len) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| bool bool | BLI_string_all_words_matched (const char *name, const char *str, int(*words)[2], int words_len) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| bool bool int | BLI_string_find_split_words (const char *str, size_t str_maxlen, char delim, int r_words[][2], int words_max) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
| bool bool int bool | BLI_string_elem_split_by_delim (const char *haystack, const char delim, const char *needle) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1 |
Variables | |
| char | ATTR_MALLOC |
| #define _VA_STR_ELEM10 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d, | |||
| e, | |||
| f, | |||
| g, | |||
| h, | |||
| i ) (_VA_STR_ELEM9(v, a, b, c, d, e, f, g, h) || (_VA_STR_ELEM2(v, i))) |
Definition at line 634 of file BLI_string.h.
| #define _VA_STR_ELEM11 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d, | |||
| e, | |||
| f, | |||
| g, | |||
| h, | |||
| i, | |||
| j ) (_VA_STR_ELEM10(v, a, b, c, d, e, f, g, h, i) || (_VA_STR_ELEM2(v, j))) |
Definition at line 636 of file BLI_string.h.
| #define _VA_STR_ELEM12 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d, | |||
| e, | |||
| f, | |||
| g, | |||
| h, | |||
| i, | |||
| j, | |||
| k ) (_VA_STR_ELEM11(v, a, b, c, d, e, f, g, h, i, j) || (_VA_STR_ELEM2(v, k))) |
Definition at line 638 of file BLI_string.h.
| #define _VA_STR_ELEM13 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d, | |||
| e, | |||
| f, | |||
| g, | |||
| h, | |||
| i, | |||
| j, | |||
| k, | |||
| l ) (_VA_STR_ELEM12(v, a, b, c, d, e, f, g, h, i, j, k) || (_VA_STR_ELEM2(v, l))) |
Definition at line 640 of file BLI_string.h.
| #define _VA_STR_ELEM14 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d, | |||
| e, | |||
| f, | |||
| g, | |||
| h, | |||
| i, | |||
| j, | |||
| k, | |||
| l, | |||
| m ) (_VA_STR_ELEM13(v, a, b, c, d, e, f, g, h, i, j, k, l) || (_VA_STR_ELEM2(v, m))) |
Definition at line 642 of file BLI_string.h.
| #define _VA_STR_ELEM15 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d, | |||
| e, | |||
| f, | |||
| g, | |||
| h, | |||
| i, | |||
| j, | |||
| k, | |||
| l, | |||
| m, | |||
| n ) (_VA_STR_ELEM14(v, a, b, c, d, e, f, g, h, i, j, k, l, m) || (_VA_STR_ELEM2(v, n))) |
Definition at line 644 of file BLI_string.h.
| #define _VA_STR_ELEM16 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d, | |||
| e, | |||
| f, | |||
| g, | |||
| h, | |||
| i, | |||
| j, | |||
| k, | |||
| l, | |||
| m, | |||
| n, | |||
| o ) (_VA_STR_ELEM15(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n) || (_VA_STR_ELEM2(v, o))) |
Definition at line 646 of file BLI_string.h.
| #define _VA_STR_ELEM17 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d, | |||
| e, | |||
| f, | |||
| g, | |||
| h, | |||
| i, | |||
| j, | |||
| k, | |||
| l, | |||
| m, | |||
| n, | |||
| o, | |||
| p ) (_VA_STR_ELEM16(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) || (_VA_STR_ELEM2(v, p))) |
Definition at line 648 of file BLI_string.h.
Definition at line 619 of file BLI_string.h.
| #define _VA_STR_ELEM3 | ( | v, | |
| a, | |||
| b ) (_VA_STR_ELEM2(v, a) || (_VA_STR_ELEM2(v, b))) |
Definition at line 620 of file BLI_string.h.
| #define _VA_STR_ELEM4 | ( | v, | |
| a, | |||
| b, | |||
| c ) (_VA_STR_ELEM3(v, a, b) || (_VA_STR_ELEM2(v, c))) |
Definition at line 622 of file BLI_string.h.
| #define _VA_STR_ELEM5 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d ) (_VA_STR_ELEM4(v, a, b, c) || (_VA_STR_ELEM2(v, d))) |
Definition at line 624 of file BLI_string.h.
| #define _VA_STR_ELEM6 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d, | |||
| e ) (_VA_STR_ELEM5(v, a, b, c, d) || (_VA_STR_ELEM2(v, e))) |
Definition at line 626 of file BLI_string.h.
| #define _VA_STR_ELEM7 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d, | |||
| e, | |||
| f ) (_VA_STR_ELEM6(v, a, b, c, d, e) || (_VA_STR_ELEM2(v, f))) |
Definition at line 628 of file BLI_string.h.
| #define _VA_STR_ELEM8 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d, | |||
| e, | |||
| f, | |||
| g ) (_VA_STR_ELEM7(v, a, b, c, d, e, f) || (_VA_STR_ELEM2(v, g))) |
Definition at line 630 of file BLI_string.h.
| #define _VA_STR_ELEM9 | ( | v, | |
| a, | |||
| b, | |||
| c, | |||
| d, | |||
| e, | |||
| f, | |||
| g, | |||
| h ) (_VA_STR_ELEM8(v, a, b, c, d, e, f, g) || (_VA_STR_ELEM2(v, h))) |
Definition at line 632 of file BLI_string.h.
| #define BLI_STR_FORMAT_INT32_DECIMAL_UNIT_SIZE 7 |
Definition at line 34 of file BLI_string.h.
Referenced by BLI_str_format_decimal_unit(), blender::ed::spreadsheet::draw_count(), and TEST().
| #define BLI_STR_FORMAT_INT32_GROUPED_SIZE 15 |
Definition at line 25 of file BLI_string.h.
Referenced by BKE_ptcache_update_info(), BLI_str_format_int_grouped(), blender::ed::space_node::create_inspection_string_for_geometry_info(), blender::ed::spreadsheet::spreadsheet_footer_region_draw(), and TEST().
| #define BLI_STR_FORMAT_INT32_INTEGER_UNIT_SIZE 5 |
Definition at line 37 of file BLI_string.h.
Referenced by BLI_str_format_integer_unit(), and TEST().
| #define BLI_STR_FORMAT_INT64_BYTE_UNIT_COMPACT_SIZE 5 |
Definition at line 31 of file BLI_string.h.
Referenced by BLI_str_format_byte_unit_compact().
| #define BLI_STR_FORMAT_INT64_BYTE_UNIT_SIZE 15 |
Definition at line 28 of file BLI_string.h.
Referenced by BKE_ptcache_update_info(), BLI_str_format_byte_unit(), ED_info_statusbar_string_ex(), blender::nodes::get_bake_state_string(), blender::HashTableStats::print(), TEST(), and blender::internal::vector_print_stats().
| #define BLI_STR_FORMAT_UINT64_GROUPED_SIZE 27 |
Definition at line 22 of file BLI_string.h.
Referenced by BLI_str_format_uint64_grouped(), file_draw_tooltip_custom_func(), and TEST().
Definition at line 668 of file BLI_string.h.
Referenced by BLI_path_frame_strip(), BLI_path_join_array(), BLI_path_program_search(), BLI_path_sequence_decode(), BLI_path_sequence_encode(), BLI_path_split_dir_file(), BLI_path_split_dir_part(), BLI_path_split_file_part(), BLI_path_to_display_name(), BLI_snprintf(), BLI_snprintf_rlen(), BLI_str_escape(), BLI_str_format_byte_unit(), BLI_str_format_byte_unit_compact(), BLI_str_format_decimal_unit(), BLI_str_format_int_grouped(), BLI_str_format_integer_unit(), BLI_str_format_uint64_grouped(), BLI_str_quoted_substr(), BLI_str_unescape(), BLI_str_unescape_ex(), BLI_str_utf32_as_utf8(), BLI_str_utf8_as_utf32(), BLI_str_utf8_from_unicode(), BLI_string_flip_side_name(), BLI_string_join_array(), BLI_string_join_array_by_sep_char(), BLI_string_split_prefix(), BLI_string_split_suffix(), BLI_strncat(), BLI_strncpy(), BLI_strncpy_ensure_pad(), BLI_strncpy_rlen(), BLI_strncpy_utf8(), BLI_strncpy_utf8_rlen(), BLI_strncpy_wchar_as_utf8(), BLI_strncpy_wchar_from_utf8(), BLI_vsnprintf(), BLI_vsnprintf_rlen(), and RNA_property_string_get_alloc().
| #define BLI_string_debug_size_after_nil | ( | str, | |
| str_maxncpy ) BLI_string_debug_size(str, str_maxncpy) |
Definition at line 673 of file BLI_string.h.
Referenced by BLI_path_abs(), BLI_path_abs_from_cwd(), BLI_path_extension_ensure(), BLI_path_extension_replace(), BLI_path_filename_ensure(), BLI_path_frame(), BLI_path_frame_range(), BLI_path_rel(), BLI_path_slash_ensure_ex(), BLI_path_suffix(), BLI_string_replace_table_exact(), and BLI_uniquename_cb().
| #define SNPRINTF | ( | dst, | |
| format, | |||
| ... ) BLI_snprintf(dst, ARRAY_SIZE(dst), format, __VA_ARGS__) |
Definition at line 597 of file BLI_string.h.
Referenced by action_flip_pchan(), blender::ed::object::add_hook_object(), AnimationImporter::apply_matrix_curves(), apply_shear(), apply_value_impl(), applyBakeTime(), applyBoneEnvelope(), applyBoneRoll(), applyCurveShrinkFatten(), applyGPOpacity(), applyGPShrinkFatten(), applyMaskShrinkFatten(), applyMirror(), applyPushPull(), applyTilt(), applyToSphere(), AnimationImporter::Assign_transform_animations(), blender::ed::object::bake_targets_output_external(), bc_enable_fcurves(), Bend(), BKE_appdir_program_python_search(), BKE_freestyle_lineset_add(), BKE_image_add_renderslot(), BKE_keyblock_add(), BKE_memfile_undo_encode(), BKE_packedfile_write_to_file(), BKE_ptcache_load_external(), BKE_ptcache_update_info(), BKE_unit_replace_string(), blend_file_thumb_from_camera(), blend_file_thumb_from_screenshot(), blender_version_decimal(), blender_version_init(), Freestyle::BlenderStrokeRenderer::BlenderStrokeRenderer(), BLI_path_frame(), BLI_path_frame_range(), BLI_str_format_int_grouped(), BLI_str_format_uint64_grouped(), BLI_uniquename_cb(), blo_do_versions_280(), blo_do_versions_pre250(), BLO_write_file_impl(), block_create__close_file_dialog(), block_create_opengl_usage_warning(), block_create_save_file_overwrite_dialog(), boid_new_state(), blender::ui::bonedropper_sample_pt(), BPY_driver_exec(), BPY_modules_load_user(), blender::io::usd::cache_image_color(), blender::io::hydra::cache_image_file(), blender::io::hydra::cache_or_get_image_file(), camera_multiview_advanced(), blender::gpu::GLTexture::check_feedback_loop(), blender::gpu::debug::check_gl_error(), blender::gpu::debug::check_gl_resources(), blender::deg::color_for_pointer(), common_draw_status_header(), console_drop_path_copy(), copy_particle_systems_to_object(), create_title_button(), curve_rename_fcurves(), customdata_version_242(), datadropper_id_sample_pt(), decimate_draw_status(), do_history(), do_version_layers_to_collections(), do_versions_after_linking_280(), do_versions_nodetree_multi_file_output_format_2_62_1(), draw_grid_unit_name(), draw_marker_texts(), blender::draw_property_for_socket(), blender::ed::geometry::draw_property_for_socket(), draw_selected_name(), draw_seq_in_view(), draw_seq_text_get_overlay_string(), draw_waveform_graticule(), DRW_cdlayer_attr_aliases_add(), DRW_stats_draw(), DRW_texture_pool_query(), DRW_texture_pool_texture_acquire(), dynamicPaintSurface_updateType(), blender::ed::sculpt_paint::dyntopo::dyntopo_detail_size_update_header(), ease_draw_status_header(), ED_image_draw_info(), ed_marker_add_exec(), ed_marker_camera_bind_exec(), ed_marker_move_update_header(), ed_preview_draw_rect(), ED_region_cache_draw_curfra_label(), ED_scene_draw_fps(), edbm_bevel_update_status_text(), edbm_inset_update_header(), AnimationImporter::evaluate_animation(), blender::io::grease_pencil::SVGExporter::export_grease_pencil_objects(), blender::io::usd::export_packed_texture(), DocumentExporter::exportCurrentScene(), blender::draw::extract_tan_init_common(), file_draw_tooltip_custom_func(), file_overwrite_detailed_info_show(), filelist_get_details_column_string(), fmodifier_panel_register(), fmodifier_subpanel_register(), blender::bke::bake::frame_to_file_name(), fsmenu_read_system(), GPUCodegen::generate_attribs(), generator_panel_draw(), get_default_collection_name(), blender::io::usd::get_in_memory_texture_filename(), get_proxy_filepath(), get_proxy_filepath(), get_rna_access(), get_tc_filepath(), getname_anim_fcurve(), GPENCIL_shader_antialiasing(), GPU_material_split_sub_function(), gpu_node_graph_add_texture(), gpu_node_input_link(), GPU_vertformat_multiload_enable(), graph_draw_driver_settings_panel(), blender::compositor::DebugInfo::graphviz(), icon_draw_rect_input(), blender::animrig::id_action_ensure(), blender::deg::IDNode::identifier(), image_update_views_format(), IMB_anim_absolute(), IMB_anim_previewframe(), IMB_exr_channel_rect(), imb_exr_multilayer_parse_channels_from_file(), IMB_exr_set_channel(), IMB_thumb_load_image(), blender::gpu::debug::init_gl_callbacks(), blender::draw::init_vbo_for_attribute(), interactive_value_update(), ipo_to_animdata(), knifetool_draw_angle(), knifetool_draw_visible_distances(), loopcut_init(), loopcut_modal(), make_renderinfo_string(), make_structDNA(), GeometryExporter::makeTexcoordSourceId(), menu_items_from_all_operators(), blender::draw::mesh_extract_uv_format_init(), meshdeform_matrix_solve(), metadata_custom_draw_fields(), minimize_stretch_iteration(), modifier_subpanel_register(), mtex_adrcodes_to_paths(), blender::ed::object::multires_external_save_invoke(), Freestyle::BlenderStrokeRenderer::NewMesh(), blender::ed::space_node::node_buts_image_user(), blender::bke::node_remove_node(), blender::bke::node_replace_undefined_types(), ntreeCompositCryptomatteAddSocket(), blender::gpu::debug::object_label(), blender::gpu::debug::object_label(), open_anim_file_multiview(), AnimationExporter::open_animation_container(), operator<<(), panel_draw(), panel_draw(), blender::draw::particle_batch_cache_ensure_pos_and_seg(), blender::draw::particle_batch_cache_ensure_procedural_strand_data(), playanim_toscreen_ex(), pose_slide_draw_status(), poselib_blend_modal(), blender::ed::space_node::preview_render(), pyrna_prop_str(), radial_control_paint_cursor(), radial_control_update_header(), RE_engine_update_stats(), render_result_exr_file_cache_path(), replace_if_different(), rna_def_fileselect_asset_idfilter(), rna_def_node_item_array_common_functions(), rna_def_node_item_array_new_with_socket_and_name(), rna_def_node_item_array_socket_item_common(), RNA_path_append(), rna_preprocess(), sample_color_update_header(), scale_from_neighbor_draw_status_header(), scene_ensure_depsgraph_p(), screen_state_to_nonnormal(), screen_user_menu_draw(), SEQ_channels_ensure(), seq_disk_cache_get_dir(), seq_disk_cache_get_file_path(), seq_disk_cache_get_project_dir(), seq_proxy_get_custom_file_filepath(), seq_proxy_get_filepath(), seq_sound_proxy_update_cb(), seqbase_unique_name(), sequencer_image_seq_reserve_frames(), sequencer_slip_update_header(), setNearestAxis3d(), setUserConstraint(), shader_preview_render(), shaderfx_subpanel_register(), shapekey_adrcodes_to_paths(), shear_draw_status_header(), sig_handle_crash(), blender::ed::object::skin_armature_bone_create(), slider_draw(), stampdata(), stampdata_from_template(), stats_row(), stitch_update_header(), template_texture_user_menu(), blender::bke::greasepencil::tests::TEST(), thumb_create_ex(), tracking_dopesheet_channels_calc(), ui_block_colorpicker(), ui_but_user_menu_add(), ui_def_but_rna__menu_type(), ui_draw_but_WAVEFORM(), ui_imageuser_slot_menu(), blender::ed::space_node::ui_node_menu_column(), UI_pie_menu_begin(), ui_popup_context_menu_for_panel(), UI_popup_menu_reports(), ui_template_list_layout_draw(), ui_tooltip_data_from_tool(), uiblock_layer_pass_buttons(), uiDefAutoButR(), uiTemplateImageInfo(), uiTemplateMovieclipInformation(), uiTemplatePreview(), uiTemplateRecentFiles_tooltip_func(), uiTemplateRunningJobs(), unpack_generate_paths(), unpack_menu(), uri_from_filename(), blender::io::hydra::USDSceneDelegate::USDSceneDelegate(), validate_array_type(), version_bonelayers_to_bonecollections(), version_geometry_nodes_add_attribute_input_settings(), version_liboverride_rnacollections_insertion_object(), blender::ed::object::vgroup_duplicate(), wm_autosave_location(), wm_filepath_default(), WM_operator_name_call_ptr_with_depends_on_cursor(), WM_platform_associate_set(), WM_toolsystem_ref_sync_from_context(), write_file_handle(), and write_global().
| #define SNPRINTF_RLEN | ( | dst, | |
| format, | |||
| ... ) BLI_snprintf_rlen(dst, ARRAY_SIZE(dst), format, __VA_ARGS__) |
Definition at line 598 of file BLI_string.h.
Referenced by draw_handle_transform_text(), draw_histogram(), DRW_text_edit_mesh_measure_stats(), id_name_final_build(), idp_str_append_escape(), Matrix_str(), metadata_draw_imbuf(), motion_path_cache(), nla_draw_strip_frames_text(), template_ID(), and ui_update_color_picker_buts_rgba().
| #define STR_CONCAT | ( | dst, | |
| len, | |||
| suffix ) len += BLI_strncpy_rlen(dst + len, suffix, ARRAY_SIZE(dst) - len) |
Definition at line 602 of file BLI_string.h.
Referenced by BKE_image_save_options_init(), and WM_platform_support_perform_checks().
| #define STR_CONCATF | ( | dst, | |
| len, | |||
| format, | |||
| ... ) len += BLI_snprintf_rlen(dst + len, ARRAY_SIZE(dst) - len, format, __VA_ARGS__) |
Definition at line 604 of file BLI_string.h.
| #define STR_ELEM | ( | ... | ) | VA_NARGS_CALL_OVERLOAD(_VA_STR_ELEM, __VA_ARGS__) |
Definition at line 653 of file BLI_string.h.
Referenced by BKE_image_render_write_exr(), BKE_scene_multiview_is_render_view_active(), blo_do_versions_280(), blo_is_builtin_template(), BLO_update_defaults_startup_blend(), blender::deg::RNANodeQuery::construct_node_identifier(), convert_include(), blender::ed::object::data_transfer_poll_property(), blender::draw::drw_volume_object_mesh_init(), drw_volume_object_mesh_init(), edbm_spin_poll_property(), blender::nodes::node_composite_render_layer_cc::RenderLayerOperation::execute(), file_browse_invoke(), gpu_node_input_link(), image_open_draw_check_prop(), main(), menu_types_add_from_keymap_items(), blender::nodes::node_composite_scale_cc::node_composite_update_scale(), blender::ed::space_node::node_group_operator_active_poll(), blender::nodes::node_shader_bsdf_hair_principled_cc::node_shader_update_hair_principled(), blender::nodes::node_shader_volume_scatter_cc::node_shader_update_scatter(), blender::nodes::node_shader_subsurface_scattering_cc::node_shader_update_subsurface_scattering(), pyrna_struct_getattro(), RE_RenderPassIsColor(), rna_def_property_get_func(), seq_effect_add_properties_poll(), sequencer_add_draw_check_fn(), sh_fn_poll_default(), version_geometry_nodes_use_rotation_socket(), and version_mesh_crease_generic().
| #define STRNCPY | ( | dst, | |
| src ) BLI_strncpy(dst, src, ARRAY_SIZE(dst)) |
Definition at line 593 of file BLI_string.h.
Referenced by ABC_export(), absolute_convert_foreach_path_cb(), action_buttons_register(), action_flip_pchan_rna_paths(), blender::add_attribute_search_button(), add_bevel_modifier_attribute_name_defaults(), AnimationImporter::add_bone_fcurve(), blender::io::usd::USDGeomReader::add_cache_modifier(), blender::ed::space_node::add_catalog_assets_menu_type(), add_driver_with_target(), blender::ed::object::add_hook_object(), add_ibuf_for_tile(), add_new_constraint_internal(), add_object_path(), blender::realtime_compositor::FileOutput::add_pass(), blender::ed::space_node::add_root_catalogs_menu_type(), blender::ed::space_node::add_unassigned_assets_menu_type(), blender::realtime_compositor::FileOutput::add_view(), blender::realtime_compositor::FileOutput::add_view(), blender::io::alembic::AbcObjectReader::addCacheModifier(), addMatrixSpace(), ANIM_armature_bonecoll_active_index_set(), ANIM_armature_bonecoll_active_set(), ANIM_armature_bonecoll_name_set(), ANIM_channel_debug_print_info(), ANIM_copy_as_driver(), ANIM_keyingset_info_register(), AnimationImporter::apply_matrix_curves(), arg_handle_debug_gpu_scope_capture_set(), arg_handle_output_set(), arg_handle_python_file_run(), armature_autoside_names_exec(), armature_extrude_exec(), blender::bke::asset_main_create_from_ID(), blender::bke::asset_root_path_for_save(), asset_shelf_settings_new(), blender::bke::asset_weak_reference_for_user_library(), AnimationImporter::Assign_color_animations(), AnimationImporter::Assign_float_animations(), AnimationImporter::Assign_lens_animations(), AnimationImporter::Assign_transform_animations(), attr_input_name(), blender::ed::object::bake_simulation::bake_simulation_get_path_users(), bc_add_node(), BKE_addon_ensure(), BKE_animdata_merge_copy(), BKE_appdir_font_folder_default(), BKE_appdir_program_path_init(), BKE_blender_globals_init(), BKE_blender_user_menu_ensure(), BKE_blendfile_append(), BKE_blendfile_userdef_from_defaults(), BKE_bpath_foreach_path_allocated_process(), BKE_bpath_foreach_path_dirfile_fixed_process(), BKE_bpath_foreach_path_fixed_process(), BKE_cachefile_add_layer(), BKE_cachefile_eval(), BKE_collection_exporter_name_set(), BKE_color_managed_colorspace_settings_copy(), BKE_color_managed_colorspace_settings_init(), BKE_color_managed_display_settings_copy(), BKE_color_managed_display_settings_init(), BKE_color_managed_view_settings_copy(), BKE_color_managed_view_settings_init_render(), BKE_constraint_targets_flush(), BKE_cryptomatte_matte_id_to_entries(), BKE_fluid_modifier_copy(), BKE_fmodifier_name_set(), BKE_freestyle_lineset_add(), BKE_gpencil_palette_addnew(), BKE_gpencil_palettecolor_addnew(), BKE_grease_pencil_vgroup_name_update(), BKE_id_new_name_validate(), BKE_image_add_generated(), BKE_image_add_renderslot(), BKE_image_add_tile(), BKE_image_format_color_management_copy_from_scene(), BKE_image_format_init_for_write(), BKE_image_format_update_color_space_for_type(), BKE_image_load_exists_in_lib(), BKE_image_load_in_lib(), BKE_image_packfiles(), BKE_image_packfiles_from_mem(), BKE_image_render_write(), BKE_image_render_write_exr(), BKE_image_save_options_init(), BKE_image_signal(), BKE_keyblock_add(), BKE_keyblock_copy_settings(), BKE_keyconfig_pref_ensure(), BKE_keyingset_add_path(), BKE_lib_override_library_update(), BKE_libblock_copy_in_lib(), BKE_library_filepath_set(), BKE_main_library_weak_reference_add_item(), BKE_main_namemap_get_name(), BKE_mask_layer_copy(), BKE_mask_layer_new(), BKE_mask_layer_rename(), BKE_mask_new(), BKE_memfile_undo_decode(), BKE_memfile_undo_encode(), BKE_modifier_copy_ex(), BKE_movieclip_file_add(), BKE_movieclip_file_add_exists_ex(), BKE_nla_action_stash(), BKE_nla_tweakmode_enter(), BKE_nlastack_add_strip(), BKE_nlastrip_validate_name(), BKE_nlatrack_insert_before(), BKE_object_calc_parent(), BKE_object_copy_modifier(), BKE_packedfile_compare_to_file(), BKE_packedfile_new(), BKE_packedfile_unpack_image(), BKE_packedfile_unpack_sound(), BKE_packedfile_unpack_to_file(), BKE_packedfile_unpack_vfont(), BKE_packedfile_unpack_volume(), BKE_packedfile_write_to_file(), BKE_panel_new(), BKE_pose_add_group(), BKE_pose_channel_ensure(), BKE_preferences_asset_library_add(), BKE_preferences_asset_library_path_set(), BKE_preferences_extension_repo_add(), BKE_preferences_extension_repo_add_default_remote(), BKE_preferences_extension_repo_custom_dirpath_set(), BKE_preferences_extension_repo_module_set(), BKE_ptcache_disk_cache_rename(), BKE_ptcache_load_external(), BKE_ptcache_update_info(), BKE_render_result_stamp_data(), BKE_scene_add_render_view(), BKE_scene_disable_color_management(), BKE_scene_multiview_view_filepath_get(), BKE_sim_debug_data_add_element(), BKE_sound_new_file(), BKE_sound_new_file_exists_ex(), BKE_studiolight_create(), BKE_studiolight_init(), BKE_text_file_modified_check(), BKE_text_file_modified_ignore(), BKE_text_load_ex(), BKE_text_reload(), BKE_tracking_object_add(), BKE_tracking_plane_track_add(), BKE_tracking_reconstruction_context_new(), BKE_tracking_reconstruction_report_error_message(), BKE_tracking_track_add_empty(), BKE_undosys_step_push_init_with_type(), BKE_undosys_step_push_with_type(), BKE_vfont_load(), BKE_vfont_load_exists_ex(), BKE_vfontdata_from_freetypefont(), BKE_view_layer_rename(), BKE_volume_load(), BKE_volume_new_for_eval(), BKE_volume_set_velocity_grid_by_name(), Freestyle::BlenderStrokeRenderer::BlenderStrokeRenderer(), bli_builddir(), BLI_path_abs(), BLI_path_abs_from_cwd(), BLI_path_contains(), BLI_path_program_search(), BLI_path_rel(), BLO_blendhandle_get_datablock_info(), blo_do_versions_250(), blo_do_versions_260(), blo_do_versions_270(), blo_do_versions_280(), blo_do_versions_290(), blo_do_versions_300(), blo_do_versions_pre250(), blo_do_versions_userdef(), blo_filedata_from_file(), blo_find_main(), BLO_library_temp_load_id(), blo_read_file_internal(), BLO_read_from_memfile(), blo_update_defaults_scene(), blo_update_defaults_screen(), BLO_update_defaults_startup_blend(), BLO_update_defaults_workspace(), BLO_write_file_impl(), BMO_op_vinitf(), boid_new_state(), bone_autoside_name(), bookmark_select_exec(), bpy_lib_enter(), bpy_lib_load(), bpy_lib_write(), bpy_rna_data_temp_data(), blender::ed::sculpt_paint::brush_asset_save_as_exec(), blender::nodes::decl::String::build(), build_pict_list_from_image_sequence(), buttons_context_register(), cache_file_init_data(), blender::io::hydra::cache_image_file(), cachefile_open_exec(), blender::ed::asset::shelf::catalog_selector_panel_register(), cdf_layer_add(), change_input_socket_to_rotation_type(), change_node_socket_name(), blender::seq::check_sound_media_missing(), cmp_node_image_add_pass_output(), collection_add(), blender::ed::object::collection_exporter_add_exec(), collection_exporter_copy(), blender::ed::object::collection_exporter_register(), colormanage_check_colorspace_settings(), colormanage_check_display_settings(), colormanage_check_view_settings(), colormanage_colorspace_add(), colormanage_display_add(), colormanage_look_add(), colormanage_view_add(), common_draw_status_header(), blender::io::obj::OBJExportRegressionTest::compare_obj_export_to_golden(), blender::io::stl::STLExportTest::compare_to_golden(), blender::ed::space_node::connect_nodes_to_aovs(), blender::ed::object::constraint_apply_exec(), constraint_bone_name_fix(), blender::ed::object::constraint_copy_exec(), blender::ed::object::constraint_delete_exec(), blender::bke::forward_compat::construct_interface_as_legacy_sockets(), convert_grease_pencil_stroke_hardness_to_softness(), blender::io::usd::USDMaterialReader::convert_usd_primvar_reader_float2(), copy_image_packedfiles(), copy_lineset(), blender::bke::create_auto_smooth_modifier(), blender::io::obj::create_placeholder_image(), blender::ed::asset::shelf::create_shelf_from_type(), blender::io::usd::create_temp_path_for_usdz_export(), curve_calc_modifiers_post(), CustomData_external_add(), customdata_version_242(), decimate_draw_status(), depthdropper_depth_sample_pt(), detect_clip_source(), direct_link_library(), blender::nodes::do_forward_compat_versioning(), do_version_constraints_245(), do_version_workspaces_after_lib_link(), do_versions(), do_versions_after_linking_300(), do_versions_after_linking_400(), do_versions_compositor_render_passes_storage(), do_versions_node_group_add_socket_2_56_2(), do_versions_nodetree_customnodes(), do_versions_nodetree_file_output_layers_2_64_5(), do_versions_nodetree_multi_file_output_format_2_62_1(), do_versions_nodetree_multi_file_output_path_2_63_1(), do_versions_point_attribute_names(), do_versions_point_attributes(), do_write_image_or_movie(), blender::nodes::node_geo_bake_cc::draw_bake_items(), blender::nodes::draw_common_bake_settings(), blender::nodes::draw_data_blocks(), draw_marker_texts(), draw_movieclip_notes(), blender::nodes::node_geo_simulation_cc::draw_simulation_state(), drivers_path_rename_fix(), blender::draw::drw_attributes_add_request(), DRW_pass_create(), DRW_stats_draw(), drw_stats_timer_start_ex(), duplicateEditBoneObjects(), dynamicPaint_bakeImageSequence(), dynamicPaint_Modifier_copy(), dynamicPaint_outputSurfaceImage(), ease_draw_status_header(), ED_armature_bone_rename(), ED_armature_bones_flip_names(), ED_armature_ebone_add(), ED_armature_from_edit(), ED_armature_join_objects_exec(), ED_buttons_search_string_set(), ED_clip_buttons_register(), ED_file_change_dir_ex(), ED_fileselect_ensure_default_filepath(), ED_fsmenu_entry_set_name(), ED_gpencil_anim_copybuf_copy(), ED_image_draw_info(), ED_image_filesel_detect_sequences(), ed_marker_duplicate_apply(), ED_node_set_tree_type(), ED_node_tree_push(), ED_node_tree_start(), ed_panel_draw(), ED_scene_view_layer_delete(), ED_screen_user_menu_item_add_menu(), ED_screen_user_menu_item_add_operator(), ED_screen_user_menu_item_add_prop(), ED_screen_user_menu_register(), ED_slider_status_string_get(), ED_slider_unit_set(), ED_spacetype_action(), ED_spacetype_buttons(), ED_spacetype_clip(), ED_spacetype_console(), ED_spacetype_file(), ED_spacetype_image(), ED_spacetype_info(), ED_spacetype_ipo(), ED_spacetype_nla(), ED_spacetype_node(), ED_spacetype_outliner(), ED_spacetype_script(), ED_spacetype_sequencer(), ED_spacetype_statusbar(), ED_spacetype_text(), ED_spacetype_topbar(), ED_spacetype_userpref(), ED_spacetype_view3d(), ED_uvedit_buttons_register(), eevee_draw_scene(), blender::ensure_vertex_group(), blender::io::obj::export_frame(), blender::io::stl::export_frame(), blender::io::usd::export_in_memory_texture(), blender::io::usd::export_packed_texture(), external_draw_scene_do_v3d(), blender::draw::extract_tan_init_common(), fcurve_add_to_list(), fcurves_path_rename_fix(), file_browse_exec(), file_browse_invoke(), file_directory_enter_handle(), file_directory_new_exec(), file_draw_string(), file_execute_region_panels_register(), file_expand_directory(), file_external_operations_menu_register(), file_filename_enter_handle(), blender::bke::tests::file_handler_add_test(), file_path_to_ui_path(), file_rename_state_activate(), file_select_do(), file_sfile_filepath_set(), file_tool_props_region_panels_register(), file_tools_region_panels_register(), filelist_get_details_column_string(), filelist_readjob_all_asset_library(), filelist_readjob_recursive_dir_add_items(), filelist_readjob_start(), filelist_setdir(), filelist_setfilter_options(), fileselect_ensure_updated_file_params(), fileselect_file_set(), fileselect_initialize_params_common(), fileselect_refresh_asset_params(), fillCineonMainHeader(), fillDpxMainHeader(), fix_relpaths_library(), fluid_bake_sequence(), fmodifier_panel_register(), fmodifier_subpanel_register(), blender::gpu::FrameBuffer::FrameBuffer(), FRS_copy_active_lineset(), FRS_paste_active_lineset(), fsmenu_insert_entry(), fsmenu_read_bookmarks(), blender::io::usd::gather_objects_paths(), GPUCodegen::generate_attribs(), generator_panel_draw(), blender::bke::FileHandlerType::get_default_filename(), blender::io::obj::get_image_filepath(), blender::io::usd::get_in_memory_texture_filename(), blender::bke::bake::get_modifier_bake_path(), blender::bke::bake::get_node_bake_path(), get_path_system_ex(), get_path_user_ex(), get_proxy_filepath(), blender::io::usd::get_relative_path(), get_rna_access(), get_udim_tiles(), Freestyle::StringUtils::getPathName(), Freestyle::BlenderStrokeRenderer::GetStrokeShader(), gpencil_layer_add_exec(), GPU_material_from_nodetree(), gpu_node_graph_add_attribute(), gpu_node_graph_add_layer_attribute(), gpu_node_graph_add_uniform_attribute(), graph_buttons_register(), graph_panel_properties(), blender::compositor::DebugInfo::graphviz(), groupname_to_code(), handle_load_file(), blender::ed::asset::shelf::header_regiontype_register(), hud_panels_register(), icon_preview_imbuf_from_brush(), idp_generic_copy(), IDP_New(), IDP_NewIDPArray(), IDP_NewStringMaxSize(), idprops_ensure_named_group(), idriver_to_cdriver(), image_add_view(), image_buttons_register(), image_colorspace_from_imbuf(), image_file_browse_invoke(), image_foreach_path(), image_init_multilayer_multiview(), image_memorypack_imbuf(), image_node_colorspace(), image_open_single(), image_replace_exec(), image_save_post(), image_save_update_filepath(), image_sequence_get_frame_ranges(), image_update_views_format(), IMB_anim_set_index_dir(), IMB_colormanagement_check_file_config(), IMB_colormanagement_colorspace_from_ibuf_ftype(), IMB_colormanagement_init_default_view_settings(), IMB_colormanagement_validate_settings(), IMB_exr_add_channel(), IMB_exr_channel_rect(), IMB_exr_get_handle_name(), imb_exr_get_pass(), imb_exr_multilayer_parse_channels_from_file(), IMB_ibImageFromMemory(), IMB_index_builder_create(), IMB_indexer_open(), IMB_loadiffname(), IMB_moviecache_create(), IMB_open_anim(), IMB_suffix_anim(), IMB_testiffname(), IMB_thumb_load_image(), imbuf_load_impl(), blender::io::obj::OBJImportTest::import_and_check(), blender::io::stl::stl_importer_test::import_and_check(), blender::io::usd::import_asset(), import_file(), blender::io::ply::import_mesh(), blender::io::usd::import_startjob(), blender::io::ply::importer_main(), blender::io::stl::importer_main(), blender::nodes::node_composite_planetrackdeform_cc::init(), blender::nodes::node_composite_trackpos_cc::init(), init(), init_data(), blender::deg::VolumeBackup::init_from_volume(), blender::nodes::node_composite_file_output_cc::init_output_file(), init_text_effect(), initLaplacianSystem(), joined_armature_fix_animdata_cb(), joined_armature_fix_links(), joined_armature_fix_links_constraints(), blender::bke::greasepencil::convert::legacy_object_modifier_build(), blender::bke::greasepencil::convert::legacy_object_modifier_dash(), blender::bke::greasepencil::convert::legacy_object_modifier_hook(), blender::bke::greasepencil::convert::legacy_object_modifier_influence(), blender::bke::greasepencil::convert::legacy_object_modifier_time(), blender::bke::greasepencil::convert::legacy_object_modifier_weight_angle(), blender::bke::greasepencil::convert::legacy_object_modifier_weight_proximity(), library_link_end(), LibWeakRefKey::LibWeakRefKey(), blender::bke::greasepencil::convert::lineart_unwrap_v3(), blender::bke::greasepencil::convert::lineart_wrap_v3(), load_data_init_from_operator(), load_image_single(), blender::io::usd::USDMaterialReader::load_tex_image(), blender::eevee::LookdevWorld::LookdevWorld(), main(), main_namemap_populate(), main_namemap_validate_and_fix(), make_boneList_recursive(), blender::ed::object::make_object_duplilist_real(), blender::bke::forward_compat::make_socket(), blender::bke::make_socket(), make_socket_type_virtual(), make_standard_socket_type(), mask_parent_set_exec(), blender::ed::outliner::merged_element_search_fn_recursive(), blender::bke::mesh_calc_finalize(), mesh_new_from_mesh(), meshcache_do(), minimal_operator_create(), ml_addpass_cb(), ml_addview_cb(), blender::ed::object::modifier_add_asset_exec(), blender::ed::object::modifier_add_catalog_assets_menu_type(), blender::ed::object::modifier_add_root_catalogs_menu_type(), blender::ed::object::modifier_add_unassigned_assets_menu_type(), modifier_panel_register(), modifier_subpanel_register(), modify_geometry_set(), modify_mesh(), blender::nodes::decl::modify_subtype_except_for_storage(), movieclip_open_anim_file(), blender::gpu::MTLShaderInterface::MTLShaderInterface(), blender::io::obj::MTLWriter::MTLWriter(), blender::ed::outliner::namebutton_fn(), namemap_add_name(), namemap_remove_name(), new_modifier(), nla_buttons_register(), nla_tweakmode_exit_nofollowptr(), blender::bke::node_add_node(), blender::nodes::node_composite_convert_color_space_cc::node_composit_init_convert_colorspace(), blender::nodes::node_composite_keyingscreen_cc::node_composit_init_keyingscreen(), blender::nodes::node_composite_render_layer_cc::node_composit_init_rlayers(), blender::ed::space_node::node_create(), blender::ed::space_node::node_draw_space(), blender::nodes::node_geo_import_obj::node_geo_exec(), blender::nodes::node_geo_import_stl::node_geo_exec(), blender::nodes::nodes_geo_import_ply::node_geo_exec(), blender::ed::space_node::node_geometry_add_attribute_search_button(), blender::ed::geometry::node_group_operator_assets_menu(), blender::ed::geometry::node_group_operator_assets_menu_unassigned(), blender::nodes::node_geo_attribute_capture_cc::node_layout_ex(), blender::nodes::node_geo_foreach_geometry_element_cc::node_layout_ex(), blender::nodes::node_geo_menu_switch_cc::node_layout_ex(), blender::nodes::node_geo_repeat_cc::node_layout_ex(), blender::bke::node_modify_socket_type(), node_reroute_add_storage(), node_reroute_init(), node_sock_label(), node_socket_copy_default_value(), blender::bke::node_tree_add_tree_do(), blender::bke::node_type_base(), blender::bke::node_type_base_custom(), blender::bke::node_type_socket_templates(), blender::bke::node_type_storage(), ntree_update_reroute_nodes(), object_add_or_copy_particle_system(), object_copy_data(), blender::ed::object::object_grease_pencil_add_exec(), open_invoke(), open_invoke(), outputNumInput(), override_idtemplate_menu(), blender::panel_register(), blender::ed::object::parent_set(), blender::ed::object::parent_set(), blender::io::obj::OBJParser::parse(), blender::bke::blendfile::PartialWriteContext::PartialWriteContext(), blender::draw::particle_batch_cache_ensure_procedural_strand_data(), paste_material_exec(), blender::io::path_reference(), blender::ed::asset::shelf::popover_panel_register(), pose_autoside_names_exec(), pose_bone_do_paste(), pose_clear_user_transforms_exec(), pose_paste_exec(), pose_slide_draw_status(), poselib_blend_modal(), preferences_extension_repo_add_exec(), blender::ed::space_node::preview_prepare_scene(), preview_prepare_scene(), blender::ed::space_node::preview_render(), blender::io::usd::process_usdz_textures(), ptcache_frame_from_filename(), pygpu_offscreen__tp_new(), pygpu_texture__tp_new(), pygpu_uniformbuffer__tp_new(), pyrna_prop_str(), RE_create_gp_pass(), RE_engine_render(), RE_engine_update_stats(), RE_InitState(), RE_NewInteractiveCompositorRender(), RE_NewRender(), RE_SetActiveRenderView(), blender::io::grease_pencil::SVGImporter::read(), read_global(), read_library_file_data(), blender::io::usd::USDVolumeReader::read_object_data(), blender::io::usd::USDXformReader::read_object_data(), recent_files_menu_register(), blender::asset_system::AssetLibrary::refresh_catalog_simplename(), blender::nodes::refresh_node_socket(), register_node_tree_type_cmp(), register_node_tree_type_geo(), register_node_tree_type_sh(), register_node_tree_type_tex(), blender::ed::spreadsheet::register_row_filter_panels(), blender::ed::spreadsheet::register_spacetype(), register_undefined_types(), relative_convert_foreach_path_cb(), blender::ed::greasepencil::remap_vertex_groups(), renamebutton_cb(), render_layer_add_pass(), render_result_exr_file_cache_path(), render_result_from_bake(), render_result_new(), render_result_view_new(), render_result_views_shallowcopy(), replace_if_different(), blender::ed::space_node::reroute_node_draw_label(), RNA_struct_state_owner_set(), blender::ed::sculpt_paint::undo::save_active_attribute(), save_image_op(), save_set_filepath(), scale_from_neighbor_draw_status_header(), scene_copy_data(), scene_init_data(), screen_opengl_views_setup(), screenshot_invoke(), SEQ_add_image_load_file(), SEQ_add_image_set_directory(), SEQ_add_image_strip(), SEQ_add_load_data_init(), SEQ_add_movie_strip(), seq_add_set_view_transform(), seq_disk_cache_add_file_to_list(), seq_disk_cache_add_header_entry(), seq_disk_cache_get_dir(), seq_disk_cache_get_files(), SEQ_edit_sequence_swap(), SEQ_effect_text_font_load(), SEQ_modifier_new(), seq_proxy_get_filepath(), SEQ_sequence_base_unique_name_recursive(), sequencer_add_movie_multiple_strips(), sequencer_add_sound_multiple_strips(), sequencer_buttons_register(), sequencer_change_path_exec(), sequencer_generic_invoke_path__internal(), sequencer_image_seq_reserve_frames(), sequencer_meta_make_exec(), sequencer_separate_images_exec(), blender::imbuf::set_colorspace_name(), blender::ed::object::set_constraint_nth_target(), blender::nodes::socket_items::set_item_name_and_make_unique(), blender::io::usd::set_job_filepath(), BoneExtended::set_name(), blender::compositor::CompositorOperation::set_scene_name(), setError(), setNearestAxis2d(), blender::animrig::tests::ArmatureBoneCollections::SetUp(), blender::animrig::tests::ArmatureBoneCollectionsLiboverrides::SetUp(), blender::animrig::tests::ArmatureBoneCollectionsTestList::SetUp(), blender::animrig::tests::KeyframingTest::SetUp(), blender::bke::tests::BKE_armature_find_selected_bones_test::SetUp(), blender::bke::tests::BPathTest::SetUp(), blender::interface::tests::CopyDriversToSelected::SetUp(), blender::io::alembic::AlembicExportTest::SetUp(), blender::ed::asset::list::AssetList::setup(), setup_app_data(), blender::io::alembic::AbcObjectReader::setupObjectTransform(), blender::ed::object::shade_auto_smooth_exec(), blender::gpu::Shader::Shader(), blender::ed::object::shaderfx_copy(), blender::ed::object::shaderfx_copy_exec(), shaderfx_panel_register(), blender::ed::object::shaderfx_remove_exec(), shaderfx_subpanel_register(), shapekey_adrcodes_to_paths(), shear_draw_status_header(), solve_camera_invoke(), solve_camera_updatejob(), split_groups_action_temp(), split_main_newid(), blender::ed::spreadsheet::spreadsheet_data_set_region_panels_register(), stampdata(), stampdata_from_template(), blender::gpu::StorageBuf::StorageBuf(), studiolight_add_file(), surface_setUniqueOutputName(), blender::bke::id::tests::TEST(), blender::bke::id::tests::TEST(), blender::bke::id::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), TEST(), TEST(), blender::asset_system::tests::TEST_F(), blender::asset_system::tests::TEST_F(), blender::bke::tests::TEST_F(), blender::bke::tests::TEST_F(), blender::bke::tests::TEST_F(), blender::bke::tests::TEST_F(), blender::bke::tests::TEST_F(), blender::bke::tests::TEST_F(), blender::io::ply::TEST_F(), blender::io::ply::TEST_F(), blender::io::ply::TEST_F(), blender::io::ply::TEST_F(), blender::io::ply::TEST_F(), blender::io::ply::TEST_F(), blender::io::ply::TEST_F(), blender::io::ply::TEST_F(), blender::bke::tests::test_render_pass_conflict(), text_find_set_selected_exec(), text_replace_set_selected_exec(), blender::gpu::Texture::Texture(), toolsystem_reinit_ensure_toolref(), tracking_dopesheet_channels_calc(), tracks_map_new(), transform_orientations_current_set(), transformcache_copy(), transformcache_evaluate(), txt_write_file(), ubuf_from_image_no_tiles(), UI_block_begin(), ui_block_open_begin(), UI_but_icon_indicator_set(), ui_but_user_menu_add(), ui_draw_menu_item(), ui_imageuser_slot_menu(), ui_layout_heading_set(), ui_list_ensure(), UI_list_filter_and_sort_items(), ui_panel_category_active_set(), UI_panel_category_add(), ui_pie_menu_level_create(), ui_popup_menu_create_from_menutype(), ui_style_new(), ui_text_clip_middle(), UI_text_clip_middle_ex(), ui_text_clip_middle_protect_right(), ui_text_clip_right_label(), UI_theme_init_default(), UI_UL_asset_view(), UI_UL_cache_file_layers(), uiblock_layer_pass_buttons(), uiItemMenuEnumFullO_ptr(), uiItemMenuEnumR_prop(), uiLayoutPanelProp(), uiStyleInit(), uiTemplateCollectionExporters(), uiTemplateComponentMenu(), uiTemplatePreview(), uiTemplateTextureUser(), undo_history_menu_register(), undoarm_from_editarm(), undomesh_from_editmesh(), undosys_id_ref_store(), blender::gpu::UniformBuf::UniformBuf(), unique_name(), unique_node_name(), unpack_generate_paths(), blender::bke::bake::unpack_geometry_nodes_bake(), unwrap_options_get(), update_paint_modes_for_brush_assets(), update_voronoi_node_fac_output(), updateDuplicateSubtarget(), uri_from_filename(), blender::io::usd::USD_import(), user_string_to_number(), userpref_main_region_layout(), version_add_group_in_out_node(), version_geometry_nodes_primitive_uv_maps(), version_geometry_nodes_set_position_node_offset(), version_make_socket_stub(), version_mesh_crease_generic(), version_node_add_empty(), version_node_add_socket(), version_node_id(), version_replace_velvet_sheen_node(), version_switch_node_input_prefix(), versioning_eevee_material_shadow_none(), versioning_replace_legacy_combined_and_separate_color_nodes(), versioning_replace_legacy_glossy_node(), versioning_replace_legacy_mix_rgb_node(), versioning_replace_musgrave_texture_node(), versioning_replace_splitviewer(), vfont_get_data(), vfont_init_data(), blender::ed::object::vgroup_duplicate(), view3d_buttons_register(), view_lock_to_active_exec(), blender::draw::color_management::viewport_settings_apply(), volume_copy_data(), blender::ed::object::volume_import_exec(), volume_init_data(), weightvg_do_mask(), what_does_obaction(), widget_draw_text(), wm_add_default(), wm_data_consistency_ensure(), WM_dropbox_add(), wm_file_write(), wm_gizmogroup_tweak_modal_keymap(), wm_homefile_read_ex(), WM_init(), WM_init_state_app_template_set(), WM_jobs_get(), WM_keyconfig_remove(), WM_keyconfig_set_active(), WM_keymap_add_item(), WM_keymap_item_restore_to_default(), wm_keymap_new(), wm_lib_relocate_exec_do(), wm_link_append_exec(), wm_main_playanim_intern(), WM_modalkeymap_add_item_str(), wm_open_mainfile_get_description(), wm_operator_create(), WM_operator_last_properties_store(), WM_operatortype_macro_define(), wm_revert_mainfile_exec(), wm_save_as_mainfile_exec(), wm_search_menu_invoke(), WM_toolsystem_ref_set_from_runtime(), WM_toolsystem_ref_sync_from_context(), wm_window_copy(), WM_window_cursor_keymap_status_refresh(), WM_window_ensure_active_view_layer(), WM_window_open(), WM_window_set_active_view_layer(), WM_xr_actionmap_binding_ensure_unique(), WM_xr_actionmap_binding_new(), WM_xr_actionmap_ensure_unique(), WM_xr_actionmap_item_ensure_unique(), WM_xr_actionmap_item_new(), WM_xr_actionmap_new(), WM_xr_active_action_set_set(), wm_xr_session_controller_data_populate(), wm_xr_session_event_create(), workspace_layout_name_set(), write_crash_blend(), write_global(), write_jpeg(), and write_renderinfo().
| #define STRNCPY_RLEN | ( | dst, | |
| src ) BLI_strncpy_rlen(dst, src, ARRAY_SIZE(dst)) |
Definition at line 596 of file BLI_string.h.
Referenced by BLI_path_extension_check_glob(), blender::io::usd::export_packed_texture(), is_filtered_asset(), nla_draw_strip_text(), TEST(), TEST(), uiItemFullR(), and unpack_generate_paths().
| #define VSNPRINTF | ( | dst, | |
| format, | |||
| args ) BLI_vsnprintf(dst, ARRAY_SIZE(dst), format, args) |
Definition at line 600 of file BLI_string.h.
| #define VSNPRINTF_RLEN | ( | dst, | |
| format, | |||
| args ) BLI_vsnprintf_rlen(dst, ARRAY_SIZE(dst), format, args) |
Definition at line 601 of file BLI_string.h.
| char char ATTR_MALLOC ATTR_PRINTF_FORMAT | ( | 1 | , |
| 0 | ) |
| size_t ATTR_PRINTF_FORMAT | ( | 3 | , |
| 4 | ) |
| char ATTR_PRINTF_FORMAT | ( | 4 | , |
| 0 | ) |
| size_t size_t char ATTR_PRINTF_FORMAT | ( | 4 | , |
| 5 | ) |
| size_t BLI_snprintf | ( | char *__restrict | dst, |
| size_t | dst_maxncpy, | ||
| const char *__restrict | format, | ||
| ... ) |
Portable replacement for snprintf.
Referenced by acf_nla_curve_name(), acf_shapekey_name(), ANIM_add_driver(), arg_handle_addons_set(), BKE_blender_version_blendfile_string_from_values(), BKE_fluid_cache_new_name_for_current_session(), BKE_image_set_filepath_from_tile_number(), BKE_nurb_valid_message(), BKE_tracking_get_rna_path_for_plane_track(), BKE_tracking_get_rna_path_for_track(), BKE_tracking_get_rna_path_prefix_for_plane_track(), BKE_tracking_get_rna_path_prefix_for_track(), BKE_uv_map_edge_select_name_get(), BKE_uv_map_pin_name_get(), BKE_uv_map_vert_select_name_get(), BLI_filelist_entry_owner_to_string(), BLI_path_sequence_encode(), BLI_uniquename_cb(), BLI_uuid_format(), bli_windows_get_module_version(), bone_autoside_name(), bpy_text_filepath_get(), blender::gpu::GLFrameBuffer::check(), blender::gpu::MTLFrameBuffer::check(), draw_seq_text_get_source(), blender::draw::drw_curves_get_attribute_sampler_name(), ED_slider_status_string_get(), get_current_time_str(), get_default_texture_layer_name_for_object(), get_proxy_filepath(), ArmatureImporter::get_rna_path_for_joint(), getname_anim_fcurve(), graph_fmodifier_panel_id(), headerBoneSize(), headerResize(), headerSeqSlide(), headerTimeScale(), headerTimeSlide(), headerTimeTranslate(), imb_exr_insert_view_name(), loopcut_init(), loopcut_modal(), new_folder_path(), nla_fmodifier_panel_id(), blender::ed::space_node::node_find_create_label(), outputNumInput(), OVERLAY_edit_uv_cache_init(), particles_fluid_step(), blender::gpu::MTLShaderInterface::prepare_common_shader_inputs(), ptcache_dt_to_str(), ptcache_path(), PyC_ObSpitStr(), pyrna_enum_to_py(), pyrna_func_error_prefix(), reconstruct_update_solve_cb(), rna_construct_function_name(), rna_construct_wrapper_function_name(), ruler_item_as_string(), scene_render_name_get(), seq_multiview_name(), seq_proxy_get_custom_file_filepath(), seq_proxy_get_filepath(), thumbpathname_from_uri(), translate_dist_to_str(), blender::ed::outliner::TreeElementRNAArrayElement::TreeElementRNAArrayElement(), ui_but_copy_menu(), ui_but_copy_popover(), ui_but_string_get_ex(), UI_list_panel_unique_str(), blender::ed::space_node::ui_node_sock_name(), unique_name(), view_to_string__frame_number(), view_to_string__value(), widget_draw_text(), WM_uilisttype_to_full_list_id(), WM_xr_actionmap_binding_ensure_unique(), WM_xr_actionmap_ensure_unique(), and WM_xr_actionmap_item_ensure_unique().
| size_t BLI_snprintf_rlen | ( | char *__restrict | dst, |
| size_t | dst_maxncpy, | ||
| const char *__restrict | format, | ||
| ... ) |
A version of BLI_snprintf that returns strlen(dst)
Referenced by applyEdgeSlide(), applyTrackball(), applyVertSlide(), BKE_image_get_tile_label(), BLI_string_flip_side_name(), BLI_timecode_string_from_time(), BLI_timecode_string_from_time_seconds(), BLI_timecode_string_from_time_simple(), ED_info_statusbar_string_ex(), float_array_to_string(), get_stats_string(), GPU_debug_get_groups_names(), headerResize(), headerRotation(), headerSeqSlide(), headerTimeTranslate(), headerTranslation(), label_str_get(), ptcache_filepath(), ptcache_filepath_ext_append(), rna_path_array_multi_string_from_flat_index(), sequencer_rna_path_prefix(), uiTemplateImageInfo(), uiTemplateMovieclipInformation(), unit_as_string(), unit_scale_str(), and write_jpeg().
| char * BLI_sprintfN | ( | const char *__restrict | format, |
| ... ) |
Print formatted string into a newly MEM_mallocN'd string and return it.
Referenced by action_flip_pchan_rna_paths(), add_driver_with_target(), anim_change_prop_name(), animpath_update_basepath(), blender::bke::asset_edit_weak_reference_from_id(), blender::bke::asset_weak_reference_for_essentials(), blender::bke::asset_weak_reference_for_user_library(), BKE_action_fix_paths_rename(), BKE_animdata_fix_paths_rename(), BKE_animsys_fix_rna_path_rename(), BKE_collection_new_name_get(), BKE_id_to_unique_string_key(), blf_display_name(), BLF_display_name_from_file(), BLT_lang_set(), buffer_from_filepath(), build_pict_list_from_anim(), create_lineset_handler(), do_version_hue_sat_node(), draw_channel_widget_lock(), draw_channel_widget_mute(), fcurve_path_rename(), getname_anim_fcurve(), blender::bke::node_interface::item_types::item_copy(), blender::bke::node_interface::make_socket(), paint_brush_asset_reference_from_essentials(), paint_brush_asset_reference_ptr_from_essentials(), pose_slide_apply_quat(), pose_slide_apply_vec3(), replace_bbone_len_scale_rnapath(), seq_convert_transform_crop(), seq_convert_transform_crop_2(), seq_speed_factor_fix_rna_path(), stats_background(), update_mapping_node_fcurve_rna_path_callback(), update_mapping_node_inputs_and_properties(), version_bonecollection_anim(), version_liboverride_nla_frame_start_end(), version_node_group_split_socket(), and version_node_socket_index_animdata().
| size_t size_t char * BLI_sprintfN_with_buffer | ( | char * | fixed_buf, |
| size_t | fixed_buf_size, | ||
| size_t * | result_len, | ||
| const char *__restrict | format, | ||
| ... ) |
| int bool bool BLI_str_endswith | ( | const char *__restrict | str, |
| const char *__restrict | end ) |
Find if a string ends with another string.
| str | The string to search within. |
| end | The string we look for at the end. |
str ends with end. Referenced by animdata_filter_shapekey(), blo_do_versions_pre250(), check_valid_camera_multiview(), blender::ed::asset::index::AssetLibraryIndex::collect_preexisting_file_indices(), blender::eevee::Instance::info_append_i18n(), menu_items_from_ui_create(), replace_bbone_len_scale_rnapath(), replace_bbone_scale_rnapath(), rna_preprocess(), rna_sanity_checks(), sequencer_fcurves_targets_color_strip(), TEST(), update_mapping_node_fcurve_rna_path_callback(), and WM_keymap_poll().
| size_t BLI_str_escape | ( | char *__restrict | dst, |
| const char *__restrict | src, | ||
| size_t | dst_maxncpy ) |
This roughly matches C and Python's string escaping with double quotes - ".
Since every character may need escaping, it's common to create a buffer twice as large as the input.
| dst | The destination string, at least dst_maxncpy, typically (strlen(src) * 2) + 1. |
| src | The un-escaped source string. |
| dst_maxncpy | The maximum number of bytes allowable to copy. |
Referenced by action_flip_pchan(), action_flip_pchan_rna_paths(), blender::add_attribute_search_or_value_buttons(), blender::ed::geometry::add_attribute_search_or_value_buttons(), bc_enable_fcurves(), BKE_action_fix_paths_rename(), BKE_animdata_fix_paths_rename(), BKE_animsys_fix_rna_path_rename(), BKE_linestyle_path_to_color_ramp(), BKE_tracking_get_rna_path_for_plane_track(), BKE_tracking_get_rna_path_for_track(), BKE_tracking_get_rna_path_prefix_for_plane_track(), BKE_tracking_get_rna_path_prefix_for_track(), bpy_escape_identifier(), construct_rna_paths(), do_version_hue_sat_node(), blender::draw_property_for_output_socket(), blender::draw_property_for_socket(), blender::ed::geometry::draw_property_for_socket(), get_rna_access(), ArmatureImporter::get_rna_path_for_joint(), blender::bke::greasepencil::convert::legacy_gpencil_to_grease_pencil(), blender::bke::greasepencil::convert::legacy_object_modifier_common(), blender::bke::greasepencil::convert::legacy_object_thickness_modifier_thickness_anim(), blender::bke::node_remove_node(), RNA_path_append(), rna_path_from_ptr_to_property_index_ex(), RNA_path_full_ID_py(), RNA_property_as_string(), seq_convert_transform_crop(), seq_convert_transform_crop_2(), seq_speed_factor_fix_rna_path(), sequencer_rna_path_prefix(), shapekey_adrcodes_to_paths(), StringEscape::testEscapeWords(), update_mapping_node_fcurve_rna_path_callback(), update_mapping_node_inputs_and_properties(), version_liboverride_nla_strip_frame_start_end(), version_liboverride_rnacollections_insertion_object(), version_node_socket_index_animdata(), and version_principled_bsdf_update_animdata().
| size_t size_t size_t const char * BLI_str_escape_find_quote | ( | const char * | str | ) |
Find the first un-escaped quote in the string (to find the end of the string).
| str | Typically this is the first character in a quoted string. Where the character before *str would be ". |
Definition at line 434 of file string.c.
Referenced by action_flip_pchan_rna_paths(), BLI_str_quoted_substr_range(), and rna_path_token_in_brackets().
| void BLI_str_format_byte_unit | ( | char | dst[BLI_STR_FORMAT_INT64_BYTE_UNIT_SIZE], |
| long long int | bytes, | ||
| bool | base_10 ) |
Format a size in bytes using binary units. 1000 -> 1 KB Number of decimal places grows with the used unit (e.g. 1.5 MB, 1.55 GB, 1.545 TB).
| dst | The resulting string. Dimension of 14 to support largest possible value for bytes (#LLONG_MAX). |
| bytes | Number to format. |
| base_10 | Calculate using base 10 (GB, MB, ...) or 2 (GiB, MiB, ...). |
Definition at line 1192 of file string.c.
References ARRAY_SIZE, BLI_snprintf_rlen(), BLI_STATIC_ASSERT, BLI_STR_FORMAT_INT64_BYTE_UNIT_SIZE, BLI_str_rstrip_float_zero(), BLI_string_debug_size, BLI_strncpy(), double(), fabs(), len, and MAX2.
Referenced by BKE_ptcache_update_info(), BLI_filelist_entry_size_to_string(), ED_info_statusbar_string_ex(), blender::nodes::get_bake_state_string(), blender::HashTableStats::print(), TEST(), and blender::internal::vector_print_stats().
| void BLI_str_format_byte_unit_compact | ( | char | dst[BLI_STR_FORMAT_INT64_BYTE_UNIT_COMPACT_SIZE], |
| long long int | bytes, | ||
| bool | base_10 ) |
Format a size in bytes using binary units in compact (max 4 chars) format.
It shows a lower bound instead of rounding the number.
1 -> 1B 15 -> 15B 155 -> 155B 1555 -> 1K 15555 -> 15K 155555 -> .1M 1555555 -> 1M 15555555 -> 15M 155555555 -> .1G 1000000000 -> 1G ...
| dst | The resulting string. Dimension of 5 to support largest possible value for bytes (#LLONG_MAX). |
| bytes | Number to format. |
| base_10 | Calculate using base 10 (GB, MB, ...) or 2 (GiB, MiB, ...). |
Definition at line 1222 of file string.c.
References ARRAY_SIZE, BLI_snprintf(), BLI_STR_FORMAT_INT64_BYTE_UNIT_COMPACT_SIZE, BLI_string_debug_size, fabsf, float, floorf, and int.
Referenced by BLI_filelist_entry_size_to_string().
| void BLI_str_format_decimal_unit | ( | char | dst[BLI_STR_FORMAT_INT32_DECIMAL_UNIT_SIZE], |
| int | number_to_format ) |
Format a count to up to 6 places (plus \0 terminator) string using long number names abbreviations. Used to produce a compact representation of large numbers.
1 -> 1 15 -> 15 155 -> 155 1555 -> 1.6K 15555 -> 15.6K 155555 -> 156K 1555555 -> 1.6M 15555555 -> 15.6M 155555555 -> 156M 1000000000 -> 1B ...
Length of 7 is the maximum of the resulting string, for example, -15.5K\0.
Definition at line 1255 of file string.c.
References ARRAY_SIZE, BLI_snprintf(), BLI_STR_FORMAT_INT32_DECIMAL_UNIT_SIZE, BLI_string_debug_size, fabsf, and float.
Referenced by blender::ed::spreadsheet::draw_count(), and TEST().
| size_t BLI_str_format_int_grouped | ( | char | dst[BLI_STR_FORMAT_INT32_GROUPED_SIZE], |
| int | num ) |
Format integers with decimal grouping. 1000 -> 1,000
| dst | The resulting string. |
| num | Number to format. |
Definition at line 1168 of file string.c.
References BLI_STR_FORMAT_INT32_GROUPED_SIZE, BLI_str_format_int_grouped_ex(), BLI_string_debug_size, int, SNPRINTF, and UNUSED_VARS_NDEBUG.
Referenced by BKE_ptcache_update_info(), blender::ed::space_node::create_inspection_string_for_geometry_info(), blender::ed::spreadsheet::spreadsheet_footer_region_draw(), and TEST().
| void BLI_str_format_integer_unit | ( | char | dst[BLI_STR_FORMAT_INT32_INTEGER_UNIT_SIZE], |
| int | number_to_format ) |
Format a count to up to 3 places (plus minus sign, plus '\0' terminator) string using long number names abbreviations. Used to produce a compact representation of large numbers as integers.
It shows a lower bound instead of rounding the number.
1 -> 1 15 -> 15 155 -> 155 1555 -> 1K 15555 -> 15K 155555 -> .1M 1555555 -> 1M 15555555 -> 15M 155555555 -> .1B 1000000000 -> 1B ...
Length of 5 is the maximum of the resulting string, for example, -15K\0.
Definition at line 1279 of file string.c.
References abs(), ARRAY_SIZE, BLI_snprintf(), BLI_STR_FORMAT_INT32_INTEGER_UNIT_SIZE, BLI_string_debug_size, fabsf, float, floorf, and int.
Referenced by blender::ed::outliner::outliner_draw_userbuts(), TEST(), UI_icon_text_overlay_init_from_count(), and uiTemplateStatusInfo().
| size_t BLI_str_format_uint64_grouped | ( | char | dst[BLI_STR_FORMAT_UINT64_GROUPED_SIZE], |
| uint64_t | num ) |
Format uint64_t with decimal grouping. 1000 -> 1,000
| dst | The resulting string. |
| num | Number to format. |
Definition at line 1180 of file string.c.
References BLI_str_format_int_grouped_ex(), BLI_STR_FORMAT_UINT64_GROUPED_SIZE, BLI_string_debug_size, int, PRIu64, SNPRINTF, and UNUSED_VARS_NDEBUG.
Referenced by file_draw_tooltip_custom_func(), and TEST().
| int BLI_str_index_in_array | ( | const char *__restrict | str, |
| const char **__restrict | str_array ) |
Return index of a string in a string array.
| str | The string to find. |
| str_array | Array of strings, (must be NULL-terminated). |
Referenced by bpyunits_validate().
| int bool bool bool size_t BLI_str_partition | ( | const char * | str, |
| const char | delim[], | ||
| const char ** | sep, | ||
| const char ** | suf ) |
Find the first char matching one of the chars in delim, from left.
| str | The string to search within. |
| delim | The set of delimiters to search for, as unicode values. |
| sep | Return value, set to the first delimiter found (or NULL if none found). |
| suf | Return value, set to next char after the first delimiter found (or NULL if none found). |
Referenced by passtype_from_name(), and TEST().
| int bool bool bool size_t size_t size_t BLI_str_partition_ex | ( | const char * | str, |
| const char * | end, | ||
| const char | delim[], | ||
| const char ** | sep, | ||
| const char ** | suf, | ||
| bool | from_right ) |
Find the first char matching one of the chars in delim, either from left or right.
| str | The string to search within. |
| end | If non-NULL, the right delimiter of the string. |
| delim | The set of delimiters to search for, as unicode values. |
| sep | Return value, set to the first delimiter found (or NULL if none found). |
| suf | Return value, set to next char after the first delimiter found (or NULL if none found). |
| from_right | If true, search from the right of str, else, search from its left. |
Referenced by imb_exr_split_token(), and TEST().
| bool bool BLI_str_quoted_substr | ( | const char *__restrict | str, |
| const char *__restrict | prefix, | ||
| char * | result, | ||
| size_t | result_maxncpy ) |
Fills result with text within "" that appear after some the contents of prefix. i.e. for string pose["apples"] with prefix pose[, it will return apples.
| str | is the entire string to chop. |
| prefix | is the part of the string to step over. |
| result | The buffer to fill. |
| result_maxncpy | The maximum size of the buffer (including nil terminator). |
Assume that the strings returned must be freed afterwards, and that the inputs will contain data we want.
Definition at line 517 of file string.c.
References BLI_str_quoted_substr_range(), BLI_str_unescape_ex(), BLI_string_debug_size, and str.
Referenced by animchan_sync_fcurve_scene(), blender::bke::BKE_action_find_fcurves_with_bones(), can_delete_fcurve(), can_delete_key(), copy_animedit_keys(), blender::animrig::fcurve_matches_collection_path(), BCAnimationCurve::get_animation_name(), getname_anim_fcurve(), pose_select_same_keyingset(), and skip_fcurve_selected_data().
| bool BLI_str_quoted_substr_range | ( | const char *__restrict | str, |
| const char *__restrict | prefix, | ||
| int *__restrict | r_start, | ||
| int *__restrict | r_end ) |
Return the range of the quoted string (excluding quotes) str after prefix.
A version of #BLI_str_quoted_substrN that calculates the range instead of un-escaping and allocating the result.
| str | String potentially including prefix. |
| prefix | Quoted string prefix. |
| r_start | The start of the quoted string (after the first quote). |
| r_end | The end of the quoted string (before the last quote). |
prefix. Referenced by flip_names().
| int bool bool bool size_t size_t BLI_str_rpartition | ( | const char * | str, |
| const char | delim[], | ||
| const char ** | sep, | ||
| const char ** | suf ) |
Find the first char matching one of the chars in delim, from right.
| str | The string to search within. |
| delim | The set of delimiters to search for, as unicode values. |
| sep | Return value, set to the first delimiter found (or NULL if none found). |
| suf | Return value, set to next char after the first delimiter found (or NULL if none found). |
Referenced by BKE_scene_multiview_view_prefix_get(), imb_exr_insert_view_name(), and TEST().
| void BLI_str_rstrip | ( | char * | str | ) |
Strip white-space from end of the string.
Definition at line 976 of file string.c.
References str.
Referenced by ED_area_status_text(), and fsmenu_xdg_user_dirs_parse().
| int BLI_str_rstrip_digits | ( | char * | str | ) |
| int BLI_str_rstrip_float_zero | ( | char * | str, |
| char | pad ) |
Strip trailing zeros from a float, eg:
| str | |
| pad |
Definition at line 988 of file string.c.
Referenced by ANIM_add_driver(), BLI_str_format_byte_unit(), ui_but_copy_numeric_value(), and ui_textedit_begin().
| int bool BLI_str_startswith | ( | const char *__restrict | str, |
| const char *__restrict | start ) |
Find if a string starts with another string.
| str | The string to search within. |
| start | The string we look for at the start. |
Referenced by blend_header_check_magic(), blendthumb_create_thumb_from_file(), BLI_path_contains(), blo_do_versions_280(), blender::nodes::get_identifier_from_decl(), blender::deg::DepsgraphBuilder::get_rna_path_relative_to_scene_camera(), rna_sanity_checks(), and sequencer_fcurves_targets_color_strip().
| void BLI_str_tolower_ascii | ( | char * | str, |
| size_t | len ) |
String case conversion, not affected by locale.
Definition at line 952 of file string.c.
References BLI_tolower_ascii(), len, and str.
Referenced by BLI_path_contains(), BLI_path_make_safe_filename_ex(), blender::string_search::extract_normalized_words(), pyrna_prop_str(), userpref_main_region_layout(), and WM_operator_py_idname().
| void BLI_str_toupper_ascii | ( | char * | str, |
| size_t | len ) |
Definition at line 961 of file string.c.
References BLI_toupper_ascii(), len, and str.
Referenced by WM_operator_bl_idname().
| size_t size_t size_t BLI_str_unescape | ( | char *__restrict | dst, |
| const char *__restrict | src, | ||
| size_t | src_maxncpy ) |
See BLI_str_unescape_ex doc-string.
This function makes the assumption that dst always has at least src_maxncpy bytes available.
Use BLI_str_unescape_ex if dst has a smaller fixed size.
Referenced by action_flip_pchan_rna_paths(), bpy_unescape_identifier(), rna_path_token_in_brackets(), and StringEscape::testEscapeWords().
| size_t size_t BLI_str_unescape_ex | ( | char *__restrict | dst, |
| const char *__restrict | src, | ||
| size_t | src_maxncpy, | ||
| size_t | dst_maxncpy, | ||
| bool * | r_is_complete ) |
This roughly matches C and Python's string escaping with double quotes - ".
The destination will never be larger than the source, it will either be the same or up to half when all characters are escaped.
| dst | The destination string, at least the size of strlen(src) + 1. |
| src | The escaped source string. |
| src_maxncpy | The maximum number of bytes allowable to copy from src. |
| dst_maxncpy | The maximum number of bytes allowable to copy into dst. |
| r_is_complete | Set to true when. |
Referenced by assert_sorted_ids(), channels_alpha_sort(), cmpstringp(), colormanage_colorspace_add(), compare_extension(), ED_text_format_get(), ED_text_is_syntax_highlight_supported(), blender::ed::outliner::TreeElementRNAProperty::expand(), blender::ed::outliner::TreeElementRNAStruct::expand(), blender::io::usd::export_endjob_usdz_cleanup(), blender::io::stl::export_frame(), exr_rgba_channelname(), id_sort_by_name(), keycmp(), path_extension_check_ex(), seq_disk_cache_get_file_entry_by_path(), studiolight_cmp(), and text_find_and_replace().
Case insensitive, natural string comparison, keeping numbers in order.
Referenced by AnimationImporter::Assign_float_animations(), compare_asset_catalog(), compare_tiebreaker(), direntry_cmp(), blender::draw_warnings(), StringCasecmpNatural::testReturnsLessThanZeroForAll(), StringCasecmpNatural::testReturnsMoreThanZeroForAll(), StringCasecmpNatural::testReturnsZeroForAll(), blender::ed::outliner::treesort_alpha(), blender::ed::outliner::treesort_alpha_ob(), blender::ed::space_node::ui_node_item_name_compare(), and blender::ed::object::vgroup_sort_name().
| int BLI_strcaseeq | ( | const char * | a, |
| const char * | b ) |
Compare two strings without regard to case.
| True | if the strings are equal, false otherwise. |
Referenced by blender::bke::file_handlers_poll_file_drop(), blender::bke::FileHandlerType::filter_supported_paths(), imb_exr_pass_name_from_channel(), imb_exr_split_channel_name(), and ExtraHandler::parseElement().
| int char * BLI_strcasestr | ( | const char * | s, |
| const char * | find ) |
Portable replacement for strcasestr (not available in MSVC)
Referenced by asset_tag_matches_filter(), BLI_string_flip_side_name(), block_search_panel_label_matches(), button_matches_search_filter(), file_is_blend_backup(), imb_init_dds(), is_filtered_asset(), blender::ed::outliner::merged_element_search_fn_recursive(), name_matches_dopesheet_filter(), txt_find_string(), and unit_find_str().
| char char size_t char const char * BLI_strchr_or_end | ( | const char * | str, |
| char | ch ) |
A version of strchr that returns the end of the string (point to \0) if the character is not found.
Useful for stepping over newlines up until the last line.
Definition at line 927 of file string.c.
Referenced by BLI_string_elem_split_by_delim(), console_paste_exec(), DRW_draw_region_engine_info(), blender::bke::file_handler_add(), and ui_but_tip_len_only_first_line().
| int char char int int int int BLI_strcmp_ignore_pad | ( | const char * | str1, |
| const char * | str2, | ||
| char | pad ) |
Like strcmp, but will ignore any heading/trailing pad char for comparison. So e.g. if pad is *, *world and world* will compare equal.
Referenced by filelist_setfilter_options().
| char * BLI_strdup | ( | const char * | str | ) |
Duplicates the C-string str into a newly mallocN'd string and returns it.
| str | The string to be duplicated |
| Returns | the duplicated string |
Definition at line 40 of file string.c.
References BLI_strdupn(), and str.
Referenced by action_create(), action_set_create(), actkeys_paste_get_description(), add_driver_with_target(), blender::add_missing_data_block_mappings(), alloc_driver_fcurve(), ANIM_copy_as_driver(), animsys_blend_in_fcurves(), blender::bke::asset_weak_reference_for_user_library(), BKE_appdir_app_templates(), BKE_asset_catalog_path_list_add_path(), BKE_asset_catalog_path_list_duplicate(), BKE_bpath_foreach_path_allocated_process(), BKE_collection_new_name_get(), BKE_id_attributes_active_color_set(), BKE_id_attributes_default_color_set(), BKE_id_to_unique_string_key(), BKE_keyingset_add_path(), BKE_lib_override_library_property_get(), BKE_lib_override_library_property_operation_get(), BKE_lib_override_library_property_rna_path_change(), BKE_mesh_legacy_attribute_flags_to_strings(), BKE_modifier_set_error(), BKE_modifier_set_warning(), BKE_object_sync_to_original(), BKE_packedfile_unpack_to_file(), BKE_paint_canvas_key_get(), BKE_paint_copy(), BKE_panel_layout_panel_state_ensure(), BKE_previewimg_cached_ensure(), BKE_previewimg_cached_thumbnail_read(), BKE_render_result_stamp_data(), bke_view_layer_verify_aov_cb(), BKE_viewer_path_elem_copy(), blf_dir_metrics_search(), blf_font_new_impl(), bli_builddir(), BLI_cpu_brand_string(), BLI_string_replaceN(), BLO_blendhandle_get_datablock_names(), BLO_blendhandle_get_linkable_groups(), BLT_lang_init(), BLT_lang_locale_explode(), BMO_op_vinitf(), build_pict_list_from_image_sequence(), copy_attribute_names(), blender::copy_data(), current_relpath_append(), curves_copy_data(), blender::bke::curves_copy_parameters(), data_transfer_mesh_attributes_transfer_active_color_string(), data_transfer_mesh_attributes_transfer_default_color_string(), ED_armature_join_objects_exec(), ED_fsmenu_entry_set_path(), ED_image_save_all_modified_info(), fcurves_to_pchan_links_get(), file_browse_invoke(), file_execute(), fileentry_uiname(), filelist_file_create_entry(), filelist_readjob_recursive_dir_add_items(), folderlist_pushdir(), fsmenu_insert_entry(), fsmenu_xdg_user_dirs_parse(), ghost_event_proc(), icu_to_fcurves(), blender::nodes::id_property_create_from_socket(), blender::nodes::id_property_int_update_enum_items(), IDP_ui_data_copy(), idprop_ui_data_update_base(), idprop_ui_data_update_string(), IMB_anim_index_rebuild_context(), IMB_thumb_path_lock(), blender::gpu::GPUPlatformGlobal::init(), blender::ed::object::bake_simulation::initialize_modifier_bake_directory_if_necessary(), blender::bke::node_interface::item_types::item_copy(), blender::ed::greasepencil::join_object_with_active(), legacy_socket_move_to_interface(), lib_override_library_property_copy(), lib_override_library_property_operation_copy(), AnimationImporter::modify_fcurve(), blender::nodes::node_geo_bake_cc::node_init(), blender::nodes::node_geo_foreach_geometry_element_cc::output_node::node_init(), blender::nodes::node_geo_repeat_cc::repeat_output_node::node_init(), blender::nodes::node_geo_simulation_cc::sim_output_node::node_init(), blender::bke::node_register_alias(), blender::ed::object::object_curves_empty_hair_add_exec(), panel_list_copy(), path_destination_ensure_filename(), pyrna_struct_anim_args_parse_ex(), RE_engine_set_error_message(), read_text_corpus(), run_string_handle_error(), blender::nodes::socket_items::set_item_name_and_make_unique(), blender::ed::object::shade_auto_smooth_exec(), blender::ed::spreadsheet::spreadsheet_column_assign_runtime_data(), blender::ed::spreadsheet::spreadsheet_column_copy(), blender::ed::spreadsheet::spreadsheet_column_id_copy(), str_ghash_tests(), str_map_tests(), blender::ed::curves::surface_set::surface_set_exec(), blender::bke::tests::TEST_F(), blender::bke::tests::TEST_F(), blender::bke::tests::TEST_F(), blender::bke::tests::TEST_F(), blender::bke::tests::TEST_F(), text_convert_whitespace_exec(), text_copy_data(), text_save_as_exec(), toolsystem_brush_type_binding_update(), blender::bke::greasepencil::TreeNode::TreeNode(), try_parse_enum_item(), ui_apply_but_TEX(), ui_but_convert_to_unit_alt_name(), ui_but_rna_menu_convert_to_menu_type(), ui_but_rna_menu_convert_to_panel_type(), ui_but_string_get_dynamic(), ui_def_but_rna__menu(), UI_list_filter_and_sort_items(), ui_searchbox_apply(), ui_tooltip_data_from_tool(), uiItemFullOMenuHold_ptr(), uiTemplateRecentFiles(), blender::bke::bake::unpack_geometry_nodes_bake(), UNUSED_FUNCTION_WITH_RETURN_TYPE(), blender::nodes::update_input_properties_from_node_tree(), blender::nodes::update_output_properties_from_node_tree(), version_copy_socket(), version_idproperty_move_data_string(), version_idproperty_ui_data(), version_liboverride_rnacollections_insertion_object(), version_liboverride_rnacollections_insertion_object_constraints(), blender::ed::viewer_path::viewer_path_for_geometry_node(), blender::draw::volume_grid_cache_get(), wm_clipboard_text_set_impl(), wm_history_file_new(), wm_history_file_read(), and wm_save_as_mainfile_get_description().
| char * BLI_strdup_null | ( | const char * | str | ) |
Duplicates the C-string str into a newly mallocN'd string and returns it.
| str | The string to be duplicated, can be null |
| Returns | the duplicated string or null if str is null |
Definition at line 45 of file string.c.
References BLI_strdupn(), NULL, and str.
Referenced by blender::ed::object::bake_simulation::bake_geometry_nodes_startjob(), blender::bke::forward_compat::construct_interface_as_legacy_sockets(), blender::copy_data(), blender::nodes::BakeItemsAccessor::copy_item(), blender::nodes::CaptureAttributeItemsAccessor::copy_item(), blender::nodes::ForeachGeometryElementGenerationItemsAccessor::copy_item(), blender::nodes::ForeachGeometryElementInputItemsAccessor::copy_item(), blender::nodes::ForeachGeometryElementMainItemsAccessor::copy_item(), blender::nodes::MenuSwitchItemsAccessor::copy_item(), blender::nodes::RepeatItemsAccessor::copy_item(), blender::nodes::SimulationItemsAccessor::copy_item(), blender::ed::greasepencil::grease_pencil_layer_parent_set(), blender::nodes::id_property_int_update_enum_items(), IDP_ui_data_copy(), blender::bke::node_interface::item_types::item_copy(), blender::bke::greasepencil::LayerMask::LayerMask(), blender::bke::greasepencil::LayerMask::LayerMask(), blender::bke::node_tree_asset_on_clear_asset(), blender::bke::node_tree_asset_on_mark_asset(), blender::bke::ntree_copy_data(), blender::bke::bake::pack_files_from_directory(), blender::bke::greasepencil::Layer::set_parent_bone_name(), blender::bke::greasepencil::Layer::set_view_layer_name(), blender::bke::greasepencil::TreeNode::TreeNode(), try_parse_enum_item(), UI_but_placeholder_set(), and version_copy_socket().
| char * BLI_strdupcat | ( | const char *__restrict | str1, |
| const char *__restrict | str2 ) |
Appends the two strings, and returns new mallocN'ed string
| str1 | first string for copy |
| str2 | second string for append |
| Returns | dst |
Referenced by BLT_lang_locale_explode(), GPU_shader_create_from_python(), and replace_bbone_scale_rnapath().
| char * BLI_strdupn | ( | const char * | str, |
| size_t | len ) |
Duplicates the first len bytes of the C-string str into a newly mallocN'd string and returns it. str is assumed to be at least len bytes long.
| str | The string to be duplicated |
| len | The number of bytes to duplicate |
| Returns | the duplicated string |
Definition at line 29 of file string.c.
References BLI_assert_msg, BLI_strnlen(), len, MEM_mallocN, and str.
Referenced by blender::ed::space_node::animation_basepath_change_new(), BKE_fcurve_rnapath_set(), BKE_nlastrip_validate_fcurves(), BLI_file_read_as_lines(), BLI_path_make_safe_filename_ex(), BLI_strdup(), BLI_strdup_null(), block_create__close_file_dialog(), BLT_lang_locale_explode(), BLT_lang_set(), console_lb_add__internal(), console_lb_add_str__internal(), blender::animrig::create_fcurve_for_channel(), do_versions_after_linking_280(), blender::animrig::tests::ActionFCurveMoveTest::fcurve_create(), blender::bke::greasepencil::convert::AnimDataConvertor::fcurves_convert(), fileentry_uiname(), ibJpegImageFromCinfo(), blender::ed::asset::index::init_indexer_entry_from_value(), blender::bke::node_interface::make_panel(), blender::bke::node_interface::make_socket(), memiter_words10k_test(), blender::bke::mesh_ensure_default_color_attribute_on_add(), blender::asset_system::utils::normalize_path(), pyop_poll_message_get_fn(), blender::ed::asset::shelf::settings_set_active_catalog(), TEST(), text_autocomplete_build(), text_convert_whitespace_exec(), text_copy_data(), txt_insert_buf(), ui_but_string_get_dynamic(), ui_number_from_string_factor(), ui_number_from_string_percentage(), UI_panel_drawname_set(), ui_textedit_begin(), and WM_msg_subscribe_rna_params().
| bool bool BLI_string_all_words_matched | ( | const char * | name, |
| const char * | str, | ||
| int(*) | words[2], | ||
| int | words_len ) |
Referenced by operator_search_update_fn().
| bool bool int bool BLI_string_elem_split_by_delim | ( | const char * | haystack, |
| const char | delim, | ||
| const char * | needle ) |
A version of STR_ELEM(..) that treats haystack as multiple elements split by delim. Return true when needle is found in haystack.
| haystack | The string to search in. |
| delim | The delimiter which divides haystack. |
| needle | The string to search for (must not contain delim or the result will never be true). |
The following guarantees are made:
Referenced by BLI_delete_soft(), TEST(), TEST(), and TEST().
| bool bool int BLI_string_find_split_words | ( | const char * | str, |
| size_t | str_maxlen, | ||
| char | delim, | ||
| int | r_words[][2], | ||
| int | words_max ) |
Find the ranges needed to split str into its individual words.
| str | The string to search for words. |
| str_maxlen | Size of the string to search (ignored when larger than strlen(str)). |
| delim | Character to use as a delimiter. |
| r_words | Info about the words found. Set to [index, len] pairs. |
| words_max | Max number of words to find |
Referenced by name_matches_dopesheet_filter(), operator_search_update_fn(), and StringFindSplitWords::testStringFindSplitWords().
| bool BLI_string_has_word_prefix | ( | const char * | haystack, |
| const char * | needle, | ||
| size_t | needle_len ) |
Definition at line 569 of file string.c.
Referenced by name_matches_dopesheet_filter(), operator_search_update_fn(), and TEST().
| int bool bool bool BLI_strn_endswith | ( | const char *__restrict | str, |
| const char *__restrict | end, | ||
| size_t | str_len ) |
Referenced by texttool_suggest_add(), and texttool_suggest_prefix().
| int char char * BLI_strncasestr | ( | const char * | s, |
| const char * | find, | ||
| size_t | len ) |
Variation of BLI_strcasestr with string length limited to len
Referenced by name_matches_dopesheet_filter(), and TEST().
| char char size_t char * BLI_strncat | ( | char *__restrict | dst, |
| const char *__restrict | src, | ||
| size_t | dst_maxncpy ) |
| char * BLI_strncpy | ( | char *__restrict | dst, |
| const char *__restrict | src, | ||
| size_t | dst_maxncpy ) |
Like strncpy but ensures dst is always \0 terminated.
| dst | Destination for copy. |
| src | Source string to copy. |
| dst_maxncpy | Maximum number of characters to copy (generally the size of dst). |
| Returns | dst |
Referenced by absolute_convert_foreach_path_cb(), acf_gpl_name_legacy(), acf_group_name(), acf_masklay_name(), acf_nlaaction_name(), acf_nlatrack_name(), acf_object_name(), acf_shapekey_name(), blender::io::usd::add_input_named_attrib_node(), ANIM_add_driver(), blender::io::obj::append_frame_to_filename(), applyTransformOrientation(), AS_asset_full_path_explode_from_weak_ref(), blender::bke::asset_blendfile_path_for_save(), blender::ed::space_node::attribute_search_exec_fn(), BKE_appdir_folder_documents(), BKE_appdir_font_folder_default(), BKE_blendfile_library_path_explode(), BKE_bpath_foreach_path_fixed_process(), BKE_cachefile_filepath_get(), BKE_collection_new_name_get(), BKE_cryptomatte_find_name(), BKE_curve_init(), BKE_id_full_name_get(), BKE_id_new_name_validate(), BKE_image_ensure_tile_token_filename_only(), BKE_image_user_file_path_ex(), BKE_libblock_alloc_in_lib(), BKE_lightgroup_membership_set(), BKE_mesh_calc_loop_tangent_step_0(), BKE_movieclip_filepath_for_frame(), BKE_nurb_valid_message(), BKE_ptcache_id_clear(), BKE_scene_multiview_filepath_get(), BKE_scene_multiview_view_filepath_get(), BKE_scene_multiview_view_prefix_get(), BKE_tracking_get_rna_path_prefix_for_plane_track(), BKE_tracking_get_rna_path_prefix_for_track(), BKE_tracking_reconstruction_check(), BKE_unit_name_to_alt(), BKE_unit_replace_string(), blendfile_library_relocate_remap(), BLI_current_working_dir(), BLI_filelist_entry_mode_to_string(), BLI_filelist_entry_owner_to_string(), BLI_hostname_get(), BLI_path_abs(), BLI_path_contains(), BLI_path_extension_check_glob(), BLI_path_frame_strip(), BLI_path_program_search(), BLI_path_rel(), BLI_path_sequence_decode(), BLI_path_split_dir_file(), BLI_path_split_dir_part(), BLI_path_split_file_part(), BLI_path_to_display_name(), BLI_string_flip_side_name(), BLI_string_replace_table_exact(), BLI_string_split_prefix(), BLI_string_split_suffix(), BLI_temp_directory_path_copy_if_valid(), BLI_temp_directory_path_get(), BLI_uniquename_cb(), blo_do_versions_300(), blo_do_versions_pre250(), bone_mouse_select_menu(), bpath_list_restore(), bpyunits_to_value(), blender::bke::tests::change_name_global(), colormanage_load_config(), colormanage_look_add(), colormanage_role_color_space_name_get(), colorspace_set_default_role(), blender::io::alembic::create_archive(), create_placeholder(), customdata_external_filename(), do_makepicstring(), do_versions_nodetree_customnodes(), draw_seq_text_get_source(), ED_area_status_text(), ED_sequencer_select_sequence_single(), blender::io::usd::export_packed_texture(), blender::gpu::extract_shared_memory_blocks(), file_path_to_ui_path(), file_select_match(), file_sfile_to_operator_ex(), filelist_cache_previews_push(), filelist_file_get_full_path(), blender::ed::spreadsheet::filter_panel_id_fn(), find_bhead_from_code_name(), fluid_initjob(), fluid_validatepaths(), folderlist_popdir(), foreach_path_clean_cb(), fsmenu_entry_generate_name(), blender::io::usd::get_absolute_path(), get_drag_path(), get_index_dir(), get_sequence_filepath(), blender::nodes::node_composite_file_output_cc::FileOutputOperation::get_single_layer_image_base_path(), getname_anim_fcurve(), GPU_offscreen_create(), GPU_shader_create_info_check_error(), GPU_shader_get_attribute_info(), id_name_final_build(), image_abs_path(), IMB_exr_channel_rect(), imb_exr_get_layer(), imb_exr_insert_view_name(), imb_exr_pass_name_from_channel(), imb_exr_pass_name_from_channel_name(), IMB_exr_set_channel(), imb_exr_split_channel_name(), imb_handle_alpha(), IMB_metadata_get_field(), blender::ed::animation::greasepencil::layer_group_name(), blender::ed::animation::greasepencil::layer_name(), lib_id_library_local_paths_callback(), lib_override_library_create_from(), Freestyle::Controller::LoadMesh(), main_namemap_validate_and_fix(), material_default_gpencil_init(), material_default_holdout_init(), material_default_surface_init(), material_default_volume_init(), missing_files_find__recursive(), missing_files_find_foreach_path_cb(), ml_addlayer_cb(), blender::ed::outliner::namebutton_fn(), new_folder_path(), blender::ed::space_node::node_find_create_label(), node_group_label(), node_image_label(), blender::nodes::node_fn_integer_math_cc::node_label(), blender::bke::nodeLabel(), blender::asset_system::utils::normalize_directory_path(), ntreeCompositCryptomatteLayerPrefix(), object_mouse_select_menu(), outputNumInput(), blender::gpu::MTLShader::prepare_ssbo_vertex_fetch_metadata(), proxy_dir_get(), ptcache_path(), pyrna_py_to_prop(), RE_bake_engine(), relative_convert_foreach_path_cb(), relative_rebase_foreach_path_cb(), blender::ed::object::return_editmesh_vgroup(), RNA_parameter_list_create(), RNA_property_string_get_default(), SEQ_edit_sequence_swap(), seq_proxy_get_custom_file_filepath(), sequence_guess_offset(), sequencer_meta_make_exec(), sequencer_select_set_active(), blender::imbuf::set_colorspace_name(), blender::compositor::PlaneTrackCommon::set_plane_track_name(), blender::compositor::TrackPositionOperation::set_track_name(), blender::compositor::KeyingScreenOperation::set_tracking_object(), blender::compositor::PlaneTrackCommon::set_tracking_object(), blender::compositor::TrackPositionOperation::set_tracking_object(), setAxisMatrixConstraint(), setConstraint(), tempdir_session_create(), test_env_path(), text_text_search_exec(), ExtraHandler::textData(), ui_apply_but_undo(), UI_autocomplete_end(), UI_autocomplete_update_name(), ui_but_anim_expression_get(), ui_but_copy_operator(), ui_but_string_get_ex(), ui_but_string_set(), ui_but_text_password_hide(), UI_popup_menu_reports(), UI_search_item_add(), ui_searchbox_apply(), ui_textedit_string_set(), unpack_generate_paths(), blender::io::usd::USD_path_abs(), blender::ed::object::vgroup_init_remap(), where_am_i(), and WM_operator_bl_idname().
| char char * BLI_strncpy_ensure_pad | ( | char *__restrict | dst, |
| const char *__restrict | src, | ||
| char | pad, | ||
| size_t | dst_maxncpy ) |
Like BLI_strncpy but ensures dst is always padded by given char, on both sides (unless src is empty).
| dst | Destination for copy |
| src | Source string to copy |
| pad | the char to use for padding |
| dst_maxncpy | Maximum number of characters to copy (generally the size of dst). |
| Returns | dst |
Referenced by filelist_setfilter_options(), blender::ed::asset::shelf::filter_string_get(), blender::ed::outliner::outliner_filter_tree(), and uiListNameFilter::uiListNameFilter().
| char char size_t BLI_strncpy_rlen | ( | char *__restrict | dst, |
| const char *__restrict | src, | ||
| size_t | dst_maxncpy ) |
Like strncpy but ensures dst is always \0 terminated.
snprintf(str, sizeof(str), "%s", arg);| dst | Destination for copy |
| src | Source string to copy |
| dst_maxncpy | Maximum number of characters to copy (generally the size of dst). |
| The | number of bytes copied (The only difference from BLI_strncpy). |
Referenced by applyEdgeSlide(), applyVertSlide(), BKE_image_get_tile_label(), BKE_lightgroup_membership_get(), BKE_preferences_extension_repo_dirpath_get(), BKE_unit_name_to_alt(), bli_builddir(), BLI_path_append(), BLI_path_join_array(), BLI_path_rel(), BLI_string_flip_side_name(), event_ids_from_flag(), get_stats_string(), get_thumb_dir(), headerTranslation(), ptcache_filepath(), scene_undo_depsgraph_gen_key(), ui_searchbox_region_draw_cb__operator(), uiTemplateImageInfo(), uiTemplateMovieclipInformation(), unpack_generate_paths(), WM_operator_bl_idname(), and WM_operator_py_idname().
Determine the length of a fixed-size string.
maxlen. The equivalent of min(strlen(str), maxlen) that prevents a buffer overflow when str isn't null terminated before maxlen. Definition at line 909 of file string.c.
Referenced by blender::bke::cryptomatte::CryptomatteLayer::add_ID(), blender::compositor::add_meta_data_for_input(), blender::realtime_compositor::FileOutput::add_pass(), BKE_cryptomatte_entries_to_matte_id(), BKE_preferences_extension_repo_module_is_valid(), blf_dir_metrics_search(), blf_font_width_to_rstrlen(), blf_str_offset_from_cursor_position(), BLI_current_working_dir(), BLI_dynstr_nappend(), BLI_path_rel(), BLI_path_slash_native(), BLI_strdupn(), BLI_string_flip_side_name(), BLI_string_split_prefix(), BLI_string_split_suffix(), BLI_strncat(), BLI_strncpy(), BLI_strncpy_ensure_pad(), BLI_strncpy_rlen(), blender::compositor::combined_layer_pass_name(), ED_buttons_search_string_length(), eyedropper_cryptomatte_sample_renderlayer_fl(), eyedropper_cryptomatte_sample_view3d_fl(), GPUCodegen::generate_cryptomatte(), blender::compositor::RenderLayersProg::get_meta_data(), blender::io::usd::get_relative_path(), ibJpegImageFromCinfo(), IDP_AssignStringMaxSize(), IDP_NewStringMaxSize(), blender::compositor::ConvertColorSpaceOperation::init_execution(), blender::ed::asset::index::init_user_data(), blender::bke::greasepencil::convert::legacy_gpencil_to_grease_pencil(), blender::compositor::prefix_from_node(), blender::eevee::Cryptomatte::register_id(), blender::io::usd::USDTransformWriter::should_apply_root_xform(), TEST(), WM_xr_actionmap_binding_ensure_unique(), WM_xr_actionmap_ensure_unique(), and WM_xr_actionmap_item_ensure_unique().
| char BLI_tolower_ascii | ( | const char | c | ) |
Definition at line 942 of file string.c.
Referenced by BLI_str_tolower_ascii().
| char BLI_toupper_ascii | ( | const char | c | ) |
Definition at line 947 of file string.c.
Referenced by blender::bke::asset_root_path_for_save(), BLI_str_toupper_ascii(), and imb_exr_split_channel_name().
| size_t BLI_vsnprintf | ( | char *__restrict | dst, |
| size_t | dst_maxncpy, | ||
| const char *__restrict | format, | ||
| va_list | arg ) |
Portable replacement for vsnprintf.
| size_t size_t BLI_vsnprintf_rlen | ( | char *__restrict | dst, |
| size_t | dst_maxncpy, | ||
| const char *__restrict | format, | ||
| va_list | arg ) |
A version of BLI_vsnprintf that returns strlen(dst)
| char char * BLI_vsprintfN | ( | const char *__restrict | format, |
| va_list | args ) |
A version of BLI_sprintfN that takes a #va_list.
Referenced by BKE_reportf(), BKE_reports_prependf(), and WM_reportf().
| char * BLI_vsprintfN_with_buffer | ( | char * | fixed_buf, |
| size_t | fixed_buf_size, | ||
| size_t * | result_len, | ||
| const char *__restrict | format, | ||
| va_list | args ) |
Referenced by BLI_dynstr_appendf(), and BLI_dynstr_vappendf().
| char ATTR_MALLOC |
Definition at line 76 of file BLI_string.h.