Transfers all bytes from the current position to the end of the stream, up
to limit, returning them as a caller-owned allocated slice.
If limit would be exceeded, error.StreamTooLong is returned instead. In
such case, the next byte that would be read will be the first one to exceed
limit, and all preceeding bytes have been discarded.
See also:
appendRemainingpub fn allocRemaining(r: *Reader, gpa: Allocator, limit: Limit) LimitedAllocError![]u8
pub fn allocRemaining(r: *Reader, gpa: Allocator, limit: Limit) LimitedAllocError![]u8 {
var buffer: ArrayList(u8) = .empty;
defer buffer.deinit(gpa);
try appendRemaining(r, gpa, &buffer, limit);
return buffer.toOwnedSlice(gpa);
}