aboutsummaryrefslogtreecommitdiff
path: root/src/prc1/sym.h
blob: 17a54b3c4edc6c94ae7791380e4ea3b76c18196b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#ifndef SYM_H
#define SYM_H

#include "lex.h"
#include "prv.h"

typedef int (*sym_fn)(const struct lex *, struct prv *, const struct sym *);

int sym(struct prv *p, sym_fn fn);
int sym_lval(const struct sym *s);
int sym_rval(const struct sym *s);
void sym_free(struct sym *s);
const struct type *sym_type(struct prv *p, const struct sym *s);

#endif