ucx/string.c

changeset 125
fca8efb122de
parent 123
7fb0f74517c5
child 146
aa376dba1ba8
equal deleted inserted replaced
124:8b44653541ef 125:fca8efb122de
118 n.length = 0; 118 n.length = 0;
119 return n; 119 return n;
120 } 120 }
121 121
122 sstr_t* sstrsplit(sstr_t s, sstr_t d, size_t *n) { 122 sstr_t* sstrsplit(sstr_t s, sstr_t d, size_t *n) {
123 return sstrsplita(s, d, n, ucx_default_allocator()); 123 return sstrsplit_a(ucx_default_allocator(), s, d, n);
124 } 124 }
125 125
126 sstr_t* sstrsplita(sstr_t s, sstr_t d, size_t *n, UcxAllocator *allocator) { 126 sstr_t* sstrsplit_a(UcxAllocator *allocator, sstr_t s, sstr_t d, size_t *n) {
127 if (s.length == 0 || d.length == 0) { 127 if (s.length == 0 || d.length == 0) {
128 *n = -1; 128 *n = -1;
129 return NULL; 129 return NULL;
130 } 130 }
131 131
196 return -1; 196 return -1;
197 } 197 }
198 } 198 }
199 199
200 sstr_t sstrdup(sstr_t s) { 200 sstr_t sstrdup(sstr_t s) {
201 return sstrdupa(ucx_default_allocator(), s); 201 return sstrdup_a(ucx_default_allocator(), s);
202 } 202 }
203 203
204 sstr_t sstrdupa(UcxAllocator *allocator, sstr_t s) { 204 sstr_t sstrdup_a(UcxAllocator *allocator, sstr_t s) {
205 sstr_t newstring; 205 sstr_t newstring;
206 newstring.ptr = (char*)allocator->malloc(allocator->pool, s.length + 1); 206 newstring.ptr = (char*)allocator->malloc(allocator->pool, s.length + 1);
207 if (newstring.ptr) { 207 if (newstring.ptr) {
208 newstring.length = s.length; 208 newstring.length = s.length;
209 newstring.ptr[newstring.length] = 0; 209 newstring.ptr[newstring.length] = 0;

mercurial