projects
/
satune.git
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
87d7a49da28aec59607f52f9d2332d344811bf01
[satune.git]
/
src
/
AST
/
boolean.h
1
#ifndef BOOLEAN_H
2
#define BOOLEAN_H
3
#include "classlist.h"
4
#include "mymemory.h"
5
#include "ops.h"
6
7
struct BooleanOrder {
8
Order* order;
9
uint64_t first;
10
uint64_t second;
11
};
12
13
struct BooleanVar {
14
VarType vtype;
15
};
16
17
struct BooleanLogic {
18
LogicOp op;
19
Boolean * left;
20
Boolean * right;
21
};
22
23
struct BooleanComp {
24
CompOp op;
25
Boolean * left;
26
Boolean * right;
27
};
28
29
struct Boolean {
30
BooleanType btype;
31
union {
32
BooleanOrder order;
33
BooleanVar var;
34
BooleanLogic logic;
35
BooleanComp comp;
36
};
37
};
38
39
Boolean * allocBoolean(VarType t);
40
Boolean * allocBooleanOrder(Order * order, uint64_t first, uint64_t second);
41
void deleteBoolean(Boolean * this);
42
43
#endif