diff options
author | Nicholas Noll <nbnoll@eml.cc> | 2020-04-19 09:23:31 -0700 |
---|---|---|
committer | Nicholas Noll <nbnoll@eml.cc> | 2020-04-19 09:23:31 -0700 |
commit | 60ce7fba21a6d37c0acbe152039fbc3d0e692bf0 (patch) | |
tree | 73fa0295dace25c23a00f4ec4e654b4f4fb85619 /src/memory.c | |
parent | 1ae9a10d56fca8fe585e77533c49e5c9d680ff12 (diff) |
chore: reorganized structure to allow for more parallel projects
Diffstat (limited to 'src/memory.c')
-rw-r--r-- | src/memory.c | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/src/memory.c b/src/memory.c deleted file mode 100644 index 3d35299..0000000 --- a/src/memory.c +++ /dev/null @@ -1,49 +0,0 @@ -#include <u.h> - -// ------------------------------------------------------------------------- -// Dynamic buffer. - -/* Grow to particular size */ -void* -bufgrow(void* buf, vlong newLen, vlong eltsize) -{ - Assert(bufcap(buf) <= (SIZE_MAX - 1) / 2); - - vlong newCap = MAX(16, MAX(1 + 2 * bufcap(buf), newLen)); - - Assert(newLen <= newCap); - Assert(newCap <= (SIZE_MAX - offsetof(bufHdr, buf)) / eltsize); - - vlong newSize = offsetof(bufHdr, buf) + newCap * eltsize; - - bufHdr* newHdr; - if (buf) { - newHdr = _bufHdr(buf); - newHdr = (bufHdr*)realloc((void*)newHdr, newSize); - } else { - newHdr = (bufHdr*)malloc(newSize); - newHdr->len = 0; - } - - newHdr->cap = newCap; - return (void*)newHdr->buf; -} - -/* Pop out a value */ -void -_bufpop(void *buf, int i, vlong eltsize) -{ - int n; - byte *b; - byte stk[1024]; - Assert(eltsize < sizeof(stk)); - - b = (byte*) buf; - if (n = buflen(buf), i < n) { - memcpy(stk, b+eltsize*i, eltsize); - memcpy(b+eltsize*i, b+eltsize*(i+1), eltsize*(n-i-1)); - memcpy(b+eltsize*(n-1), stk, eltsize); - } - _bufHdr(buf)->len--; -} - |