ZONE_BLOCK_SIZE
#define ZONE_WINDOW_SIZE (256 * ZONE_BLOCK_SIZE) // 16KB
uint8_t octets[ ZONE_NAME_SIZE + ZONE_BLOCK_SIZE ];
uint8_t octets[ ZONE_RDATA_SIZE + ZONE_BLOCK_SIZE ];
#define ZONE_TAPE_SIZE ((100 * ZONE_BLOCK_SIZE) + ZONE_BLOCK_SIZE)
uint8_t octets[255 + ZONE_BLOCK_SIZE],
if (left >= ZONE_BLOCK_SIZE) {
(parser->file->buffer.length - ZONE_BLOCK_SIZE);
while (data <= data_limit && ((uintptr_t)tape_limit - (uintptr_t)tape) >= ZONE_BLOCK_SIZE) {
scan(parser, data, data + ZONE_BLOCK_SIZE);
parser->file->buffer.index += ZONE_BLOCK_SIZE;
data += ZONE_BLOCK_SIZE;
assert(left < ZONE_BLOCK_SIZE);
uint8_t octets[255 + ZONE_BLOCK_SIZE],
static const char line_feed[ZONE_BLOCK_SIZE] = { '\n', '\0' };
static const char end_of_file[ZONE_BLOCK_SIZE] = { '\0' };
if (!(data = realloc(parser->file->buffer.data, size + 1 + ZONE_BLOCK_SIZE)))
ZONE_BLOCK_SIZE);
if (left >= ZONE_BLOCK_SIZE) {
(parser->file->buffer.length - ZONE_BLOCK_SIZE);
while (data <= data_limit && ((uintptr_t)tape_limit - (uintptr_t)tape) >= ZONE_BLOCK_SIZE) {
parser->file->buffer.index += ZONE_BLOCK_SIZE;
data += ZONE_BLOCK_SIZE;
assert(left < ZONE_BLOCK_SIZE);
uint8_t buffer[ZONE_BLOCK_SIZE] = { 0 };
memmove(rdata_view.limit + ZONE_BLOCK_SIZE, octets, length);
memmove(rdata_view.octets, rdata_view.limit + ZONE_BLOCK_SIZE, length);
const size_t size = ZONE_WINDOW_SIZE + 1 + ZONE_BLOCK_SIZE;