blob: da2f23a2c8d7f483392c831226db0900b045f26d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
// Logic for parsing various suffixes that can go after an expression
#pragma once
#include "../ast.h"
#include "context.h"
ast_t *parse_comprehension_suffix(parse_ctx_t *ctx, ast_t *expr);
ast_t *parse_field_suffix(parse_ctx_t *ctx, ast_t *lhs);
ast_t *parse_fncall_suffix(parse_ctx_t *ctx, ast_t *fn);
ast_t *parse_index_suffix(parse_ctx_t *ctx, ast_t *lhs);
ast_t *parse_method_call_suffix(parse_ctx_t *ctx, ast_t *self);
ast_t *parse_non_optional_suffix(parse_ctx_t *ctx, ast_t *lhs);
ast_t *parse_optional_conditional_suffix(parse_ctx_t *ctx, ast_t *stmt);
ast_t *parse_optional_suffix(parse_ctx_t *ctx, ast_t *lhs);
|