summaryrefslogtreecommitdiffstats
path: root/src/state.h
blob: 8e268d31b918141ffb91adc3c749e6ce1becf5c0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef CCMMC_HEADER_STATE_H
#define CCMMC_HEADER_STATE_H

#include "ast.h"
#include "symbol-table.h"

#include <stdbool.h>
#include <stddef.h>

// All states of the compiler instance
typedef struct CcmmcState_struct {
    CcmmcAst *ast;
    CcmmcSymbolTable *table;
    size_t line_number;
    bool any_error;
} CcmmcState;

void             ccmmc_state_init                   (CcmmcState *state);
void             ccmmc_state_fini                   (CcmmcState *state);

#endif
// vim: set sw=4 ts=4 sts=4 et: