2
0
Fork 0

[utils] add l_g_string_prefix() and l_g_string_suffix()

This commit is contained in:
Thomas Porzelt 2009-03-08 16:45:50 +01:00
parent 7bd421e79e
commit 7d88ae2e73
2 changed files with 17 additions and 0 deletions

View File

@ -66,6 +66,9 @@ LI_API gboolean l_g_strncase_equal(GString *str, const gchar *s, guint len);
LI_API GString *l_g_string_assign_len(GString *string, const gchar *val, gssize len);
LI_API gboolean l_g_string_prefix(GString *str, const gchar *s, gsize len);
LI_API gboolean l_g_string_suffix(GString *str, const gchar *s, gsize len);
LI_API gsize dirent_buf_size(DIR * dirp);
#endif

View File

@ -633,6 +633,20 @@ gboolean l_g_strncase_equal(GString *str, const gchar *s, guint len) {
return 0 == g_ascii_strncasecmp(str->str, s, len);
}
gboolean l_g_string_suffix(GString *str, const gchar *s, gsize len) {
if (str->len < len)
return FALSE;
return (strcmp(str->str + str->len - len, s) == 0);
}
gboolean l_g_string_prefix(GString *str, const gchar *s, gsize len) {
if (str->len < len)
return FALSE;
return (strncmp(str->str, s, len) == 0);
}
GString *l_g_string_assign_len(GString *string, const gchar *val, gssize len) {
g_string_truncate(string, 0);
g_string_append_len(string, val, len);