aboutsummaryrefslogtreecommitdiff
path: root/print.h
blob: 950e0bc9ed7a405983781e96b1ce54ce9a8f0873 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#ifndef PRINT_H
#define PRINT_H

#include "cgen.h"
#include "lex.h"
#include <stddef.h>

struct prientry
{
    const struct tk *tk;
    const struct lit *lit;
    const struct stentry *entry;
};

struct print
{
    struct prientry *entries;
    size_t nentries;
    int println;
};

int print(const struct lex *l, struct prv *p,
    int (*fn)(const struct lex *, const struct prv *, const struct print *));
void print_free(struct print *p);

#endif