Commit ded614f8 authored by Pieter Noordhuis's avatar Pieter Noordhuis
Browse files

Inline sdslen and sdsavail (thanks to @bitbckt)

parent 9703b1b3
...@@ -36,11 +36,11 @@ ...@@ -36,11 +36,11 @@
#define SDS_ABORT_ON_OOM #define SDS_ABORT_ON_OOM
#include "sds.h"
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
#include <ctype.h> #include <ctype.h>
#include "sds.h"
#include "zmalloc.h" #include "zmalloc.h"
static void sdsOomAbort(void) { static void sdsOomAbort(void) {
...@@ -78,11 +78,6 @@ sds sdsnew(const char *init) { ...@@ -78,11 +78,6 @@ sds sdsnew(const char *init) {
return sdsnewlen(init, initlen); return sdsnewlen(init, initlen);
} }
size_t sdslen(const sds s) {
struct sdshdr *sh = (void*) (s-(sizeof(struct sdshdr)));
return sh->len;
}
sds sdsdup(const sds s) { sds sdsdup(const sds s) {
return sdsnewlen(s, sdslen(s)); return sdsnewlen(s, sdslen(s));
} }
...@@ -92,11 +87,6 @@ void sdsfree(sds s) { ...@@ -92,11 +87,6 @@ void sdsfree(sds s) {
zfree(s-sizeof(struct sdshdr)); zfree(s-sizeof(struct sdshdr));
} }
size_t sdsavail(sds s) {
struct sdshdr *sh = (void*) (s-(sizeof(struct sdshdr)));
return sh->free;
}
void sdsupdatelen(sds s) { void sdsupdatelen(sds s) {
struct sdshdr *sh = (void*) (s-(sizeof(struct sdshdr))); struct sdshdr *sh = (void*) (s-(sizeof(struct sdshdr)));
int reallen = strlen(s); int reallen = strlen(s);
......
...@@ -42,6 +42,16 @@ struct sdshdr { ...@@ -42,6 +42,16 @@ struct sdshdr {
char buf[]; char buf[];
}; };
static inline size_t sdslen(const sds s) {
struct sdshdr *sh = (void*)(s-(sizeof(struct sdshdr)));
return sh->len;
}
static inline size_t sdsavail(const sds s) {
struct sdshdr *sh = (void*)(s-(sizeof(struct sdshdr)));
return sh->free;
}
sds sdsnewlen(const void *init, size_t initlen); sds sdsnewlen(const void *init, size_t initlen);
sds sdsnew(const char *init); sds sdsnew(const char *init);
sds sdsempty(); sds sdsempty();
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment