Cthulhu  0.2.10
Cthulhu compiler collection
pl0.inc
Go to the documentation of this file.
1 // SPDX-License-Identifier: GPL-3.0-only
2 
3 #ifndef PL0_TYPE
4 # define PL0_TYPE(id, name)
5 #endif
6 
7 PL0_TYPE(ePl0Digit, "digit")
8 PL0_TYPE(ePl0Ident, "ident")
9 
10 PL0_TYPE(ePl0Odd, "odd")
11 PL0_TYPE(ePl0Unary, "unary")
12 PL0_TYPE(ePl0Binary, "binary")
13 PL0_TYPE(ePl0Compare, "compare")
14 
15 PL0_TYPE(ePl0Assign, "assign")
16 PL0_TYPE(ePl0Call, "call")
17 PL0_TYPE(ePl0Branch, "branch")
18 PL0_TYPE(ePl0Loop, "loop")
19 PL0_TYPE(ePl0Print, "print")
20 PL0_TYPE(ePl0Stmts, "stmts")
21 
22 PL0_TYPE(ePl0Value, "value")
23 PL0_TYPE(ePl0Procedure, "procedure")
24 
25 PL0_TYPE(ePl0Import, "import")
26 PL0_TYPE(ePl0Module, "module")
27 
28 #undef PL0_TYPE
29 
30 #ifndef DECL_TAG
31 # define DECL_TAG(id, init, str)
32 #endif
33 
34 DECL_TAG(ePl0TagValues, = eSemaValues, "values")
35 DECL_TAG(ePl0TagTypes, = eSemaTypes, "types")
36 DECL_TAG(ePl0TagProcs, = eSemaProcs, "procedures")
37 DECL_TAG(ePl0TagModules, = eSemaModules, "modules")
38 
39 DECL_TAG(ePl0TagImportedValues, /* empty */, "imported values")
40 DECL_TAG(ePl0TagImportedProcs, /* empty */, "imported procedures")
41 
42 #undef DECL_TAG
@ eSemaValues
Definition: tree.h:36
@ eSemaProcs
Definition: tree.h:42
@ eSemaModules
Definition: tree.h:45
@ eSemaTypes
Definition: tree.h:39
#define PL0_TYPE(id, name)
Definition: pl0.inc:4
#define DECL_TAG(id, init, str)
Definition: pl0.inc:31