#include #include "chunk.h" void newChunk(Chunk* chunk) { chunk->count = 0; chunk->capacity = 0; chunk->code = NULL; newValueArray(&chunk->constants); } void writeChunk(Chunk *chunk, uint8_t byte) { if (chunk->capacity < chunk->count + 1) { int oldCapacity = chunk->capacity; chunk->capacity = GROW_CAPACITY(oldCapacity); chunk->code = GROW_ARRAY(uint8_t, chunk->code, oldCapacity, chunk->capacity); } chunk->code[chunk->count] = byte; chunk->count++; } void freeChunk(Chunk *chunk) { FREE_ARRAY(uint8_t, chunk->code, chunk->capacity); freeValueArray(&chunk->constants); newChunk(chunk); } int addConstant(Chunk* chunk, Value value) { writeValueArray(&chunk->constants, value); return chunk->constants.count - 1; }