Lime Parser Generator 0.1.0
Runtime-extensible LALR(1) parser with SIMD tokenization and LLVM JIT
Loading...
Searching...
No Matches
LimeArena Struct Reference

Arena allocator for AST nodes. More...

#include <lime_ast.h>

Data Fields

char * base
 Base pointer of the current block.
 
size_t capacity
 Total bytes in the current block.
 
struct LimeArenanext
 Next block in the linked list of blocks.
 
size_t used
 Bytes used in the current block.
 

Detailed Description

Arena allocator for AST nodes.

Allocates from large contiguous blocks, freeing everything at once. Ideal for parse trees that are built once and freed together as a unit.

Definition at line 17 of file lime_ast.h.

Field Documentation

◆ base

char* LimeArena::base

Base pointer of the current block.

Definition at line 18 of file lime_ast.h.

◆ capacity

size_t LimeArena::capacity

Total bytes in the current block.

Definition at line 20 of file lime_ast.h.

◆ next

struct LimeArena* LimeArena::next

Next block in the linked list of blocks.

Definition at line 21 of file lime_ast.h.

◆ used

size_t LimeArena::used

Bytes used in the current block.

Definition at line 19 of file lime_ast.h.


The documentation for this struct was generated from the following file: