sds.c: sdsAllocSize() function added.

This commit is contained in:
antirez 2012-03-14 14:58:26 +01:00
parent 9555f8f21b
commit 739803c064
2 changed files with 8 additions and 0 deletions

View File

@ -123,6 +123,12 @@ sds sdsRemoveFreeSpace(sds s) {
return sh->buf;
}
size_t sdsAllocSize(sds s) {
struct sdshdr *sh = (void*) (s-(sizeof(struct sdshdr)));
return sizeof(*sh)+sh->len+sh->free+1;
}
/* Increment the sds length and decrements the left free space at the
* end of the string accordingly to 'incr'. Also set the null term
* in the new end of the string.

View File

@ -94,5 +94,7 @@ sds sdsmapchars(sds s, char *from, char *to, size_t setlen);
/* Low level functions exposed to the user API */
sds sdsMakeRoomFor(sds s, size_t addlen);
void sdsIncrLen(sds s, int incr);
sds sdsRemoveFreeSpace(sds s);
size_t sdsAllocSize(sds s);
#endif