70 void *host_reduce_user;
113void parse_context_pool_drain(
void);
167int parse_token(
ParseContext *ctx,
int token_code,
void *token_value,
int location);
186void parse_set_host_reduce(
ParseContext *ctx, LimeHostReduceFn fn,
void *user);
203#define LIME_LOC_UNKNOWN (-1)
241int parse_token_lex(
ParseContext *ctx,
int token_code,
void *token_value,
const char *lexeme,
248uint16_t snap_find_shift_action(
const ParserSnapshot *snap, uint16_t stateno, uint16_t iLookAhead);
249uint16_t snap_find_reduce_action(
const ParserSnapshot *snap, uint16_t stateno, uint16_t iLookAhead);
257#define LIME_NO_STATE ((uint16_t)0xFFFFu)
273typedef enum LimeTokenAdmissibility {
276 LIME_TOK_SHIFTREDUCE,
279} LimeTokenAdmissibility;
286uint16_t parse_context_current_state(
const ParseContext *ctx);
298LimeTokenAdmissibility parse_context_token_admissible(
315LimeTokenAdmissibility lime_token_admissible_in_state(
316 const ParserSnapshot *snap, uint16_t stateno,
int external_token_code);
327 uint32_t tokens_consumed;
329 uint32_t error_count;
349 const int *tokens, uint32_t ntokens);
struct GrammarContextStack GrammarContextStack
Opaque grammar context stack handle.
ParserSnapshot * snapshot
Snapshot pinned for this parse session.
LimeHostReduceFn host_reduce
Letter 30: optional per-session host-reduce override.
bool borrowed_snapshot
When true, this ParseContext was created via parse_begin_borrowed() and the caller guarantees the sna...
void * result_value
Letter 30: the LHS value the top-level (start-rule) reduce produced, captured when the parse accepts.
void * engine
Owned by parse_engine.c (opaque)
struct GrammarContextStack * context_stack
Optional grammar-mode boundary detector.