diff --git a/src/sds.c b/src/sds.c index bc6aa6b2f..ca915daf8 100644 --- a/src/sds.c +++ b/src/sds.c @@ -179,7 +179,7 @@ sds sdsgrowzero(sds s, size_t len) { return s; } -sds sdscatlen(sds s, void *t, size_t len) { +sds sdscatlen(sds s, const void *t, size_t len) { struct sdshdr *sh; size_t curlen = sdslen(s); @@ -193,15 +193,15 @@ sds sdscatlen(sds s, void *t, size_t len) { return s; } -sds sdscat(sds s, char *t) { +sds sdscat(sds s, const char *t) { return sdscatlen(s, t, strlen(t)); } -sds sdscatsds(sds s, sds t) { +sds sdscatsds(sds s, const sds t) { return sdscatlen(s, t, sdslen(t)); } -sds sdscpylen(sds s, char *t, size_t len) { +sds sdscpylen(sds s, const char *t, size_t len) { struct sdshdr *sh = (void*) (s-(sizeof(struct sdshdr))); size_t totlen = sh->free+sh->len; @@ -218,7 +218,7 @@ sds sdscpylen(sds s, char *t, size_t len) { return s; } -sds sdscpy(sds s, char *t) { +sds sdscpy(sds s, const char *t) { return sdscpylen(s, t, strlen(t)); } @@ -314,7 +314,7 @@ void sdstoupper(sds s) { for (j = 0; j < len; j++) s[j] = toupper(s[j]); } -int sdscmp(sds s1, sds s2) { +int sdscmp(const sds s1, const sds s2) { size_t l1, l2, minlen; int cmp; @@ -342,7 +342,7 @@ int sdscmp(sds s1, sds s2) { * requires length arguments. sdssplit() is just the * same function but for zero-terminated strings. */ -sds *sdssplitlen(char *s, int len, char *sep, int seplen, int *count) { +sds *sdssplitlen(const char *s, int len, const char *sep, int seplen, int *count) { int elements = 0, slots = 5, start = 0, j; sds *tokens; @@ -413,7 +413,7 @@ sds sdsfromlonglong(long long value) { return sdsnewlen(p,32-(p-buf)); } -sds sdscatrepr(sds s, char *p, size_t len) { +sds sdscatrepr(sds s, const char *p, size_t len) { s = sdscatlen(s,"\"",1); while(len--) { switch(*p) { @@ -481,8 +481,8 @@ int hex_digit_to_int(char c) { * Note that sdscatrepr() is able to convert back a string into * a quoted string in the same format sdssplitargs() is able to parse. */ -sds *sdssplitargs(char *line, int *argc) { - char *p = line; +sds *sdssplitargs(const char *line, int *argc) { + const char *p = line; char *current = NULL; char **vector = NULL; @@ -604,7 +604,7 @@ void sdssplitargs_free(sds *argv, int argc) { * * The function returns the sds string pointer, that is always the same * as the input pointer since no resize is needed. */ -sds sdsmapchars(sds s, char *from, char *to, size_t setlen) { +sds sdsmapchars(sds s, const char *from, const char *to, size_t setlen) { size_t j, i, l = sdslen(s); for (j = 0; j < l; j++) { diff --git a/src/sds.h b/src/sds.h index 0648381bb..e8d306503 100644 --- a/src/sds.h +++ b/src/sds.h @@ -60,13 +60,13 @@ sds sdsempty(); size_t sdslen(const sds s); sds sdsdup(const sds s); void sdsfree(sds s); -size_t sdsavail(sds s); +size_t sdsavail(const sds s); sds sdsgrowzero(sds s, size_t len); -sds sdscatlen(sds s, void *t, size_t len); -sds sdscat(sds s, char *t); -sds sdscatsds(sds s, sds t); -sds sdscpylen(sds s, char *t, size_t len); -sds sdscpy(sds s, char *t); +sds sdscatlen(sds s, const void *t, size_t len); +sds sdscat(sds s, const char *t); +sds sdscatsds(sds s, const sds t); +sds sdscpylen(sds s, const char *t, size_t len); +sds sdscpy(sds s, const char *t); sds sdscatvprintf(sds s, const char *fmt, va_list ap); #ifdef __GNUC__ @@ -80,16 +80,16 @@ sds sdstrim(sds s, const char *cset); sds sdsrange(sds s, int start, int end); void sdsupdatelen(sds s); void sdsclear(sds s); -int sdscmp(sds s1, sds s2); -sds *sdssplitlen(char *s, int len, char *sep, int seplen, int *count); +int sdscmp(const sds s1, const sds s2); +sds *sdssplitlen(const char *s, int len, const char *sep, int seplen, int *count); void sdsfreesplitres(sds *tokens, int count); void sdstolower(sds s); void sdstoupper(sds s); sds sdsfromlonglong(long long value); -sds sdscatrepr(sds s, char *p, size_t len); -sds *sdssplitargs(char *line, int *argc); +sds sdscatrepr(sds s, const char *p, size_t len); +sds *sdssplitargs(const char *line, int *argc); void sdssplitargs_free(sds *argv, int argc); -sds sdsmapchars(sds s, char *from, char *to, size_t setlen); +sds sdsmapchars(sds s, const char *from, const char *to, size_t setlen); /* Low level functions exposed to the user API */ sds sdsMakeRoomFor(sds s, size_t addlen);