diff options
| author | Xavier Del Campo Romero <xavi92@disroot.org> | 2026-09-05 17:14:53 +0200 |
|---|---|---|
| committer | Xavier Del Campo Romero <xavi92@disroot.org> | 2026-09-26 03:41:55 +0200 |
| commit | 3c0819236e4f07c8f57aaf1ca46d0d68aa761558 (patch) | |
| tree | bd8b57cf5420cabc4ec29815052df545b55026f9 /src/prc1/from.h | |
| parent | a3f56c76444fee090e62a59f257ed5f60b4e552b (diff) | |
| download | prc-3c0819236e4f07c8f57aaf1ca46d0d68aa761558.tar.gz | |
Move source to src/prc1
Diffstat (limited to 'src/prc1/from.h')
| -rw-r--r-- | src/prc1/from.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/prc1/from.h b/src/prc1/from.h new file mode 100644 index 0000000..8a77629 --- /dev/null +++ b/src/prc1/from.h @@ -0,0 +1,34 @@ +#ifndef FROM_H +#define FROM_H + +#include "cgen.h" +#include "lex.h" +#include "storage.h" +#include "prv.h" +#include <stddef.h> + +struct from +{ + struct from_it + { + enum {FR_VAL, FR_VAR} type; + + union + { + const struct tk *tk; + const struct stentry *e; + } u; + } start, end; + + size_t block_i; + const struct stentry *var; +}; + +int from(const struct lex *l, struct prv *p); +int from_id(const struct lex *l, struct prv *p); +int from_by(const struct lex *l, struct prv *p); +int from_idby(const struct lex *l, struct prv *p); +int from_cgen(const struct from *m, struct cgen *c); +void from_free(struct from *fr); + +#endif |
