void utvector_copy(UT_vector *dst, UT_vector *src) { /* dst, src both inited */ assert(dst->mm.sz == src->mm.sz); // double check that its inited utvector_clear(dst); utvector_reserve(dst, src->i); dst->i = src->i; if (dst->mm.clear) dst->mm.clear(dst->d, src->i); if (src->mm.copy) src->mm.copy(dst->d, src->d, src->i); else memcpy(dst->d, src->d, src->mm.sz * src->i); }
int qk_start(struct qk *qk) { utvector_clear(&qk->keys); utstring_clear(&qk->tmp); }