#include "internal.h" // fit reallocates the string such that the buffer is exactly sized for the // buffer. if the capacity equals the length, then the function is a noop. the // byte array is unchanged. void str·fit(string *s) { Hdr* h; vlong cap = str·cap(*s); vlong len = str·len(*s); if (cap == len) return; h = (Hdr*)(s - sizeof(Hdr)); h = realloc(h, sizeof(*h) + len + 1); h->cap = len; *s = h->buf; }