86typedef struct Tokenizer Tokenizer;
100Tokenizer *tokenizer_create(
TokenTable *table,
const char *input,
size_t length);
106void tokenizer_destroy(Tokenizer *tok);
113bool tokenizer_next(Tokenizer *tok,
Token *out);
119bool tokenizer_peek(Tokenizer *tok,
Token *out);
124size_t tokenizer_position(
const Tokenizer *tok);
129uint32_t tokenizer_line(
const Tokenizer *tok);
134uint32_t tokenizer_column(
const Tokenizer *tok);
Thread-safe token lookup table.
A single token returned by the tokenizer.
uint32_t line
1-based line number
const char * start
Pointer into source buffer.
size_t length
Length in bytes.
uint32_t column
1-based column number
int type
Token type code (keyword code or generic)