Lines Matching refs:s
83 sds s; in sdsnewlen() local
95 s = (char*)sh+hdrlen; in sdsnewlen()
96 fp = ((unsigned char*)s)-1; in sdsnewlen()
103 SDS_HDR_VAR(8,s); in sdsnewlen()
110 SDS_HDR_VAR(16,s); in sdsnewlen()
117 SDS_HDR_VAR(32,s); in sdsnewlen()
124 SDS_HDR_VAR(64,s); in sdsnewlen()
132 memcpy(s, init, initlen); in sdsnewlen()
133 s[initlen] = '\0'; in sdsnewlen()
134 return s; in sdsnewlen()
150 sds sdsdup(const sds s) { in sdsdup() argument
151 return sdsnewlen(s, sdslen(s)); in sdsdup()
155 void sdsfree(sds s) { in sdsfree() argument
156 if (s == NULL) return; in sdsfree()
157 s_free((char*)s-sdsHdrSize(s[-1])); in sdsfree()
174 void sdsupdatelen(sds s) { in sdsupdatelen() argument
175 int reallen = strlen(s); in sdsupdatelen()
176 sdssetlen(s, reallen); in sdsupdatelen()
183 void sdsclear(sds s) { in sdsclear() argument
184 sdssetlen(s, 0); in sdsclear()
185 s[0] = '\0'; in sdsclear()
194 sds sdsMakeRoomFor(sds s, size_t addlen) { in sdsMakeRoomFor() argument
196 size_t avail = sdsavail(s); in sdsMakeRoomFor()
198 char type, oldtype = s[-1] & SDS_TYPE_MASK; in sdsMakeRoomFor()
202 if (avail >= addlen) return s; in sdsMakeRoomFor()
204 len = sdslen(s); in sdsMakeRoomFor()
205 sh = (char*)s-sdsHdrSize(oldtype); in sdsMakeRoomFor()
223 s = (char*)newsh+hdrlen; in sdsMakeRoomFor()
229 memcpy((char*)newsh+hdrlen, s, len+1); in sdsMakeRoomFor()
231 s = (char*)newsh+hdrlen; in sdsMakeRoomFor()
232 s[-1] = type; in sdsMakeRoomFor()
233 sdssetlen(s, len); in sdsMakeRoomFor()
235 sdssetalloc(s, newlen); in sdsMakeRoomFor()
236 return s; in sdsMakeRoomFor()
245 sds sdsRemoveFreeSpace(sds s) { in sdsRemoveFreeSpace() argument
247 char type, oldtype = s[-1] & SDS_TYPE_MASK; in sdsRemoveFreeSpace()
249 size_t len = sdslen(s); in sdsRemoveFreeSpace()
250 sh = (char*)s-sdsHdrSize(oldtype); in sdsRemoveFreeSpace()
257 s = (char*)newsh+hdrlen; in sdsRemoveFreeSpace()
261 memcpy((char*)newsh+hdrlen, s, len+1); in sdsRemoveFreeSpace()
263 s = (char*)newsh+hdrlen; in sdsRemoveFreeSpace()
264 s[-1] = type; in sdsRemoveFreeSpace()
265 sdssetlen(s, len); in sdsRemoveFreeSpace()
267 sdssetalloc(s, len); in sdsRemoveFreeSpace()
268 return s; in sdsRemoveFreeSpace()
278 size_t sdsAllocSize(sds s) { in sdsAllocSize() argument
279 size_t alloc = sdsalloc(s); in sdsAllocSize()
280 return sdsHdrSize(s[-1])+alloc+1; in sdsAllocSize()
285 void *sdsAllocPtr(sds s) { in sdsAllocPtr() argument
286 return (void*) (s-sdsHdrSize(s[-1])); in sdsAllocPtr()
312 void sdsIncrLen(sds s, int incr) { in sdsIncrLen() argument
313 unsigned char flags = s[-1]; in sdsIncrLen()
317 unsigned char *fp = ((unsigned char*)s)-1; in sdsIncrLen()
325 SDS_HDR_VAR(8,s); in sdsIncrLen()
331 SDS_HDR_VAR(16,s); in sdsIncrLen()
337 SDS_HDR_VAR(32,s); in sdsIncrLen()
343 SDS_HDR_VAR(64,s); in sdsIncrLen()
350 s[len] = '\0'; in sdsIncrLen()
358 sds sdsgrowzero(sds s, size_t len) { in sdsgrowzero() argument
359 size_t curlen = sdslen(s); in sdsgrowzero()
361 if (len <= curlen) return s; in sdsgrowzero()
362 s = sdsMakeRoomFor(s,len-curlen); in sdsgrowzero()
363 if (s == NULL) return NULL; in sdsgrowzero()
366 memset(s+curlen,0,(len-curlen+1)); /* also set trailing \0 byte */ in sdsgrowzero()
367 sdssetlen(s, len); in sdsgrowzero()
368 return s; in sdsgrowzero()
376 sds sdscatlen(sds s, const void *t, size_t len) { in sdscatlen() argument
377 size_t curlen = sdslen(s); in sdscatlen()
379 s = sdsMakeRoomFor(s,len); in sdscatlen()
380 if (s == NULL) return NULL; in sdscatlen()
381 memcpy(s+curlen, t, len); in sdscatlen()
382 sdssetlen(s, curlen+len); in sdscatlen()
383 s[curlen+len] = '\0'; in sdscatlen()
384 return s; in sdscatlen()
391 sds sdscat(sds s, const char *t) { in sdscat() argument
392 return sdscatlen(s, t, strlen(t)); in sdscat()
399 sds sdscatsds(sds s, const sds t) { in sdscatsds() argument
400 return sdscatlen(s, t, sdslen(t)); in sdscatsds()
405 sds sdscpylen(sds s, const char *t, size_t len) { in sdscpylen() argument
406 if (sdsalloc(s) < len) { in sdscpylen()
407 s = sdsMakeRoomFor(s,len-sdslen(s)); in sdscpylen()
408 if (s == NULL) return NULL; in sdscpylen()
410 memcpy(s, t, len); in sdscpylen()
411 s[len] = '\0'; in sdscpylen()
412 sdssetlen(s, len); in sdscpylen()
413 return s; in sdscpylen()
418 sds sdscpy(sds s, const char *t) { in sdscpy() argument
419 return sdscpylen(s, t, strlen(t)); in sdscpy()
429 int sdsll2str(char *s, long long value) { in sdsll2str() argument
437 p = s; in sdsll2str()
445 l = p-s; in sdsll2str()
450 while(s < p) { in sdsll2str()
451 aux = *s; in sdsll2str()
452 *s = *p; in sdsll2str()
454 s++; in sdsll2str()
461 int sdsull2str(char *s, unsigned long long v) { in sdsull2str() argument
467 p = s; in sdsull2str()
474 l = p-s; in sdsull2str()
479 while(s < p) { in sdsull2str()
480 aux = *s; in sdsull2str()
481 *s = *p; in sdsull2str()
483 s++; in sdsull2str()
501 sds sdscatvprintf(sds s, const char *fmt, va_list ap) { in sdscatvprintf() argument
533 t = sdscat(s, buf); in sdscatvprintf()
554 sds sdscatprintf(sds s, const char *fmt, ...) { in sdscatprintf() argument
558 t = sdscatvprintf(s,fmt,ap); in sdscatprintf()
579 sds sdscatfmt(sds s, char const *fmt, ...) { in sdscatfmt() argument
580 size_t initlen = sdslen(s); in sdscatfmt()
595 if (sdsavail(s)==0) { in sdscatfmt()
596 s = sdsMakeRoomFor(s,1); in sdscatfmt()
608 if (sdsavail(s) < l) { in sdscatfmt()
609 s = sdsMakeRoomFor(s,l); in sdscatfmt()
611 memcpy(s+i,str,l); in sdscatfmt()
612 sdsinclen(s,l); in sdscatfmt()
624 if (sdsavail(s) < l) { in sdscatfmt()
625 s = sdsMakeRoomFor(s,l); in sdscatfmt()
627 memcpy(s+i,buf,l); in sdscatfmt()
628 sdsinclen(s,l); in sdscatfmt()
641 if (sdsavail(s) < l) { in sdscatfmt()
642 s = sdsMakeRoomFor(s,l); in sdscatfmt()
644 memcpy(s+i,buf,l); in sdscatfmt()
645 sdsinclen(s,l); in sdscatfmt()
650 s[i++] = next; in sdscatfmt()
651 sdsinclen(s,1); in sdscatfmt()
656 s[i++] = *f; in sdscatfmt()
657 sdsinclen(s,1); in sdscatfmt()
665 s[i] = '\0'; in sdscatfmt()
666 return s; in sdscatfmt()
683 sds sdstrim(sds s, const char *cset) { in sdstrim() argument
687 sp = start = s; in sdstrim()
688 ep = end = s+sdslen(s)-1; in sdstrim()
692 if (s != sp) memmove(s, sp, len); in sdstrim()
693 s[len] = '\0'; in sdstrim()
694 sdssetlen(s,len); in sdstrim()
695 return s; in sdstrim()
714 void sdsrange(sds s, int start, int end) { in sdsrange() argument
715 size_t newlen, len = sdslen(s); in sdsrange()
737 if (start && newlen) memmove(s, s+start, newlen); in sdsrange()
738 s[newlen] = 0; in sdsrange()
739 sdssetlen(s,newlen); in sdsrange()
743 void sdstolower(sds s) { in sdstolower() argument
744 int len = sdslen(s), j; in sdstolower()
746 for (j = 0; j < len; j++) s[j] = tolower(s[j]); in sdstolower()
750 void sdstoupper(sds s) { in sdstoupper() argument
751 int len = sdslen(s), j; in sdstoupper()
753 for (j = 0; j < len; j++) s[j] = toupper(s[j]); in sdstoupper()
795 sds *sdssplitlen(const char *s, int len, const char *sep, int seplen, int *count) { in sdssplitlen() argument
819 if ((seplen == 1 && *(s+j) == sep[0]) || (memcmp(s+j,sep,seplen) == 0)) { in sdssplitlen()
820 tokens[elements] = sdsnewlen(s+start,j-start); in sdssplitlen()
828 tokens[elements] = sdsnewlen(s+start,len-start); in sdssplitlen()
858 sds sdscatrepr(sds s, const char *p, size_t len) { in sdscatrepr() argument
859 s = sdscatlen(s,"\"",1); in sdscatrepr()
864 s = sdscatprintf(s,"\\%c",*p); in sdscatrepr()
866 case '\n': s = sdscatlen(s,"\\n",2); break; in sdscatrepr()
867 case '\r': s = sdscatlen(s,"\\r",2); break; in sdscatrepr()
868 case '\t': s = sdscatlen(s,"\\t",2); break; in sdscatrepr()
869 case '\a': s = sdscatlen(s,"\\a",2); break; in sdscatrepr()
870 case '\b': s = sdscatlen(s,"\\b",2); break; in sdscatrepr()
873 s = sdscatprintf(s,"%c",*p); in sdscatrepr()
875 s = sdscatprintf(s,"\\x%02x",(unsigned char)*p); in sdscatrepr()
880 return sdscatlen(s,"\"",1); in sdscatrepr()
1052 sds sdsmapchars(sds s, const char *from, const char *to, size_t setlen) { in sdsmapchars() argument
1053 size_t j, i, l = sdslen(s); in sdsmapchars()
1057 if (s[j] == from[i]) { in sdsmapchars()
1058 s[j] = to[i]; in sdsmapchars()
1063 return s; in sdsmapchars()