1 #ifndef EMBEDED_OBERON_SCRIPT_H
2 #define EMBEDED_OBERON_SCRIPT_H
10 struct oberon_scope_s
11 {
15 };
17 enum
18 {
19 OBERON_TYPE_INTEGER,
20 OBERON_TYPE_BOOLEAN,
21 };
23 struct oberon_type_s
24 {
29 };
31 enum
32 {
33 OBERON_CLASS_VAR,
34 OBERON_CLASS_TYPE,
35 OBERON_CLASS_PROC
36 };
38 struct oberon_object_s
39 {
49 };
51 struct oberon_module_s
52 {
58 };
60 struct oberon_context_s
61 {
78 };
81 MODE_VAR,
82 MODE_INTEGER,
83 MODE_BOOLEAN,
84 MODE_CALL
85 };
88 OP_LOGIC_NOT,
89 OP_UNARY_MINUS,
90 OP_ADD,
91 OP_SUB,
92 OP_MUL,
93 OP_DIV,
94 OP_MOD,
95 OP_LOGIC_AND,
96 OP_LOGIC_OR,
97 OP_EQ,
98 OP_NEQ,
99 OP_LSS,
100 OP_LEQ,
101 OP_GRT,
102 OP_GEQ
103 };
109 struct oberon_item_s
110 {
118 };
120 struct oberon_oper_s
121 {
128 };
130 union oberon_expr_u
131 {
135 };
137 oberon_item_t item;
138 oberon_oper_t oper;
139 };