Changeset 08e103d4 in mainline for kernel/generic/src/lib
- Timestamp:
- 2019-02-05T18:26:05Z (6 years ago)
- Children:
- 1d2f85e
- Parents:
- d066259
- git-author:
- Jiří Zárevúcky <zarevucky.jiri@…> (2019-02-05 16:16:55)
- git-committer:
- Jiří Zárevúcky <zarevucky.jiri@…> (2019-02-05 18:26:05)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/src/lib/str.c
rd066259 r08e103d4 288 288 * 289 289 */ 290 size_t str_ size(const char *str)290 size_t str_bytes(const char *str) 291 291 { 292 292 size_t size = 0; … … 308 308 * 309 309 */ 310 size_t wstr_ size(const wchar_t *str)311 { 312 return (wstr_ length(str) * sizeof(wchar_t));310 size_t wstr_bytes(const wchar_t *str) 311 { 312 return (wstr_code_points(str) * sizeof(wchar_t)); 313 313 } 314 314 … … 326 326 * 327 327 */ 328 size_t str_l size(const char *str, size_t max_len)328 size_t str_lbytes(const char *str, size_t max_len) 329 329 { 330 330 size_t len = 0; … … 354 354 * 355 355 */ 356 size_t wstr_l size(const wchar_t *str, size_t max_len)357 { 358 return (wstr_n length(str, max_len * sizeof(wchar_t)) * sizeof(wchar_t));356 size_t wstr_lbytes(const wchar_t *str, size_t max_len) 357 { 358 return (wstr_ncode_points(str, max_len * sizeof(wchar_t)) * sizeof(wchar_t)); 359 359 } 360 360 … … 366 366 * 367 367 */ 368 size_t str_ length(const char *str)368 size_t str_code_points(const char *str) 369 369 { 370 370 size_t len = 0; … … 384 384 * 385 385 */ 386 size_t wstr_ length(const wchar_t *wstr)386 size_t wstr_code_points(const wchar_t *wstr) 387 387 { 388 388 size_t len = 0; … … 402 402 * 403 403 */ 404 size_t str_n length(const char *str, size_t size)404 size_t str_ncode_points(const char *str, size_t size) 405 405 { 406 406 size_t len = 0; … … 421 421 * 422 422 */ 423 size_t wstr_n length(const wchar_t *str, size_t size)423 size_t wstr_ncode_points(const wchar_t *str, size_t size) 424 424 { 425 425 size_t len = 0; … … 508 508 * Do a char-by-char comparison of two NULL-terminated strings. 509 509 * The strings are considered equal iff 510 * min(str_ length(s1), max_len) == min(str_length(s2), max_len)510 * min(str_code_points(s1), max_len) == min(str_code_points(s2), max_len) 511 511 * and both strings consist of the same sequence of characters, 512 512 * up to max_len characters. … … 690 690 bool wstr_linsert(wchar_t *str, wchar_t ch, size_t pos, size_t max_pos) 691 691 { 692 size_t len = wstr_ length(str);692 size_t len = wstr_code_points(str); 693 693 694 694 if ((pos > len) || (pos + 1 > max_pos)) … … 718 718 bool wstr_remove(wchar_t *str, size_t pos) 719 719 { 720 size_t len = wstr_ length(str);720 size_t len = wstr_code_points(str); 721 721 722 722 if (pos >= len) … … 748 748 char *str_dup(const char *src) 749 749 { 750 size_t size = str_ size(src) + 1;750 size_t size = str_bytes(src) + 1; 751 751 char *dest = malloc(size); 752 752 if (!dest) … … 779 779 char *str_ndup(const char *src, size_t n) 780 780 { 781 size_t size = str_ size(src);781 size_t size = str_bytes(src); 782 782 if (size > n) 783 783 size = n;
Note:
See TracChangeset
for help on using the changeset viewer.