gputop_string_t * gputop_string_set_size(gputop_string_t *string, size_t len) { GROW_IF_NECESSARY(string, len); string->len = len; string->str[len] = 0; return string; }
GString * g_string_set_size (GString *string, gsize len) { g_return_val_if_fail (string != NULL, string); GROW_IF_NECESSARY(string, len); string->len = len; string->str[len] = 0; return string; }
gputop_string_t * gputop_string_prepend(gputop_string_t *string, const char *val) { ssize_t len = strlen(val); GROW_IF_NECESSARY(string, len); memmove(string->str + len, string->str, string->len + 1); memcpy(string->str, val, len); return string; }
gputop_string_t * gputop_string_append_c(gputop_string_t *string, char c) { GROW_IF_NECESSARY(string, 1); string->str[string->len] = c; string->str[string->len + 1] = 0; string->len++; return string; }
GString * g_string_append_c (GString *string, gchar c) { g_return_val_if_fail(string != NULL, NULL); GROW_IF_NECESSARY(string, 1); string->str[string->len] = c; string->str[string->len + 1] = 0; string->len++; return string; }
gputop_string_t * gputop_string_insert(gputop_string_t *string, ssize_t pos, const char *val) { ssize_t len = strlen(val); GROW_IF_NECESSARY(string, len); memmove(string->str + pos + len, string->str + pos, string->len - pos - len + 1); memcpy(string->str + pos, val, len); return string; }
gputop_string_t * gputop_string_append_len(gputop_string_t *string, const char *val, ssize_t len) { if (len < 0) len = strlen(val); GROW_IF_NECESSARY(string, len); memcpy(string->str + string->len, val, len); string->len += len; string->str[string->len] = 0; return string; }
GString * g_string_prepend (GString *string, const gchar *val) { gssize len; g_return_val_if_fail (string != NULL, string); g_return_val_if_fail (val != NULL, string); len = strlen (val); GROW_IF_NECESSARY(string, len); memmove(string->str + len, string->str, string->len + 1); memcpy(string->str, val, len); return string; }
GString * g_string_insert (GString *string, gssize pos, const gchar *val) { gssize len; g_return_val_if_fail (string != NULL, string); g_return_val_if_fail (val != NULL, string); g_return_val_if_fail (pos <= string->len, string); len = strlen (val); GROW_IF_NECESSARY(string, len); memmove(string->str + pos + len, string->str + pos, string->len - pos - len + 1); memcpy(string->str + pos, val, len); return string; }
GString * g_string_append_len (GString *string, const gchar *val, gssize len) { g_return_val_if_fail(string != NULL, NULL); g_return_val_if_fail(val != NULL, string); if(len < 0) { len = strlen(val); } GROW_IF_NECESSARY(string, len); memcpy(string->str + string->len, val, len); string->len += len; string->str[string->len] = 0; return string; }