00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef _SQUAREBALL_STRFUNCS_H
00010 #define _SQUAREBALL_STRFUNCS_H
00011
00012 #include <stdarg.h>
00013 #include <stdbool.h>
00014 #include <stdarg.h>
00015
00029 char* sb_strdup(const char *s);
00030
00038 char* sb_strndup(const char *s, size_t n);
00039
00048 char* sb_strdup_vprintf(const char *format, va_list ap);
00049
00058 char* sb_strdup_printf(const char *format, ...);
00059
00068 bool sb_str_starts_with(const char *str, const char *prefix);
00069
00078 bool sb_str_ends_with(const char *str, const char *suffix);
00079
00087 char* sb_str_lstrip(char *str);
00088
00097 char* sb_str_rstrip(char *str);
00098
00107 char* sb_str_strip(char *str);
00108
00121 char** sb_str_split(const char *str, char c, size_t max_pieces);
00122
00132 char* sb_str_replace(const char *str, const char search, const char *replace);
00133
00144 char* sb_str_find(const char *str, char c);
00145
00152 void sb_strv_free(char **strv);
00153
00162 char* sb_strv_join(char **strv, const char *separator);
00163
00171 size_t sb_strv_length(char **strv);
00172
00175 #endif