add pbuf_appendall

This commit is contained in:
Daniel Brahneborg 2025-12-07 11:37:30 +01:00
parent 9c9fa59e12
commit 34d88d8ec5
2 changed files with 13 additions and 0 deletions

View file

@ -91,6 +91,16 @@ pbuf_append(pbuf_t* pbuf, void* ptr)
pbuf->ptr[pbuf->used++] = ptr; pbuf->ptr[pbuf->used++] = ptr;
} }
void
pbuf_appendall(pbuf_t* pbuf, const pbuf_t* tail)
{
if (!pbuf || !tail || (tail->used == 0))
return;
pbuf_ensure(pbuf, tail->used);
memcpy(pbuf->ptr + pbuf->used, tail->ptr, tail->used * sizeof(void*));
pbuf->used += tail->used;
}
void void
pbuf_sort(pbuf_t* pbuf, pbuf_func_sort_t func) pbuf_sort(pbuf_t* pbuf, pbuf_func_sort_t func)
{ {

View file

@ -25,6 +25,9 @@ pbuf_clear(pbuf_t* pbuf);
void void
pbuf_append(pbuf_t* pbuf, void* ptr); pbuf_append(pbuf_t* pbuf, void* ptr);
void
pbuf_appendall(pbuf_t* pbuf, const pbuf_t* tail);
void void
pbuf_putat(pbuf_t* pbuf, int ix, void* obj); pbuf_putat(pbuf_t* pbuf, int ix, void* obj);