iron_string.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435
  1. #pragma once
  2. #include <stdint.h>
  3. #include <stdbool.h>
  4. #include "iron_array.h"
  5. char *string_alloc(int size);
  6. char *string_join(char *a, char *b);
  7. char *string_copy(char *a);
  8. int string_length(char *str);
  9. bool string_equals(char *a, char *b);
  10. char *i32_to_string(int32_t i);
  11. char *i32_to_string_hex(int32_t i);
  12. char *i64_to_string(int64_t i);
  13. char *u64_to_string(uint64_t i);
  14. char *f32_to_string(float f);
  15. char *f32_to_string_with_zeros(float f);
  16. void string_strip_trailing_zeros(char *str);
  17. int32_t string_index_of(char *s, char *search);
  18. int32_t string_index_of_pos(char *s, char *search, int pos);
  19. int32_t string_last_index_of(char *s, char *search);
  20. any_array_t *string_split(char *s, char *sep);
  21. char *string_array_join(any_array_t *a, char *separator);
  22. char *string_replace_all(char *s, char *search, char *replace);
  23. char *substring(char *s, int32_t start, int32_t end);
  24. char *string_from_char_code(int32_t c);
  25. int32_t char_code_at(char *s, int32_t i);
  26. char *char_at(char *s, int32_t i);
  27. bool starts_with(char *s, char *start);
  28. bool ends_with(char *s, char *end);
  29. char *to_lower_case(char *s);
  30. char *to_upper_case(char *s);
  31. char *trim_end(char *str);
  32. int string_utf8_decode(const char *str, int *i);