Program Listing for File parser.c¶
↰ Return to documentation for file (src/lovejoy/parser.c)
#include "parser.h"
ParserContext NewParser()
{
    const LexerContext lexer = NewLexer();  //< Likely to be replaced.
    ParserContext ctx = {
        .lexer_ctx = lexer,
        .inside_parentheses = false,
        .last_expr = nil
    };
    return ctx;
}
HIR_Expr *parse_expr(ParserContext *ctx, const string source)
{
    const byte *stream = UNWRAP(source);
    Lexeme *token = nil;  //< The current token.
    token = lex(&ctx->lexer_ctx, stream);
    stream = token->end;
    UNUSED(token);
    return nil;
}