void szb_writeCStr(szb_t *buf, const char *str) { int len; assert(buf != NULL); len = strlen(str) + 1; need_space(buf, len); memcpy(&buf->data[buf->pos], str, len); buf->pos += len; }
int array_put(struct array *a, void *m) { struct array_item *ai; int retval; __lock(a); need_space(a); for (ai = a->a_arr; ai < a->a_arr + a->a_size; ai++) { if (ai->ai_data == NULL) { ai->ai_data = m; a->a_items++; break; } } retval = ai - a->a_arr; __unlock(a); return retval; }
void szb_write8(szb_t *buf, int v) { assert(buf != NULL); need_space(buf, 1); buf->data[buf->pos] = v; buf->pos += 1; }