Merge branch 'hamed' of ssh://plrg.eecs.uci.edu/home/git/constraint_compiler
[satune.git] / src / classlist.h
1 /*      Copyright (c) 2015 Regents of the University of California
2  *
3  *      Author: Brian Demsky <bdemsky@uci.edu>
4  *
5  *      This program is free software; you can redistribute it and/or
6  *      modify it under the terms of the GNU General Public License
7  *      version 2 as published by the Free Software Foundation.
8  */
9
10 #ifndef CLASSLIST_H
11 #define CLASSLIST_H
12
13 #include "mymemory.h"
14 #include <inttypes.h>
15 #define bool int
16 #define true 1
17 #define false 0
18
19 struct CSolver;
20 typedef struct CSolver CSolver;
21 struct SATEncoder;
22 typedef struct SATEncoder SATEncoder;
23
24 class Boolean;
25 class BooleanOrder;
26 class BooleanVar;
27 class BooleanLogic;
28 class BooleanPredicate;
29 class ASTNode;
30
31 struct IncrementalSolver;
32 typedef struct IncrementalSolver IncrementalSolver;
33
34 struct Set;
35 typedef struct Set Set;
36 typedef struct Set MutableSet;
37
38 class ElementFunction;
39 class ElementSet;
40 class ElementConst;
41 class Element;
42
43 typedef struct FunctionOperator FunctionOperator;
44 typedef struct FunctionTable FunctionTable;
45
46 struct Function;
47 typedef struct Function Function;
48
49 struct Predicate;
50 typedef struct Predicate Predicate;
51
52 struct PredicateTable;
53 typedef struct PredicateTable PredicateTable;
54
55 struct PredicateOperator;
56 typedef struct PredicateOperator PredicateOperator;
57
58 struct Table;
59 typedef struct Table Table;
60
61 struct Order;
62 typedef struct Order Order;
63
64 struct OrderPair;
65 typedef struct OrderPair OrderPair;
66
67 struct OrderElement;
68 typedef struct OrderElement OrderElement;
69
70 struct ElementEncoding;
71 typedef struct ElementEncoding ElementEncoding;
72
73 struct FunctionEncoding;
74 typedef struct FunctionEncoding FunctionEncoding;
75
76 struct OrderEncoding;
77 typedef struct OrderEncoding OrderEncoding;
78
79 struct TableEntry;
80 typedef struct TableEntry TableEntry;
81
82 struct OrderGraph;
83 typedef struct OrderGraph OrderGraph;
84
85 struct OrderNode;
86 typedef struct OrderNode OrderNode;
87
88 struct OrderEdge;
89 typedef struct OrderEdge OrderEdge;
90
91 struct OrderEncoder;
92 typedef struct OrderEncoder OrderEncoder;
93
94 struct Tuner;
95 typedef struct Tuner Tuner;
96 struct TunableDesc;
97 typedef struct TunableDesc TunableDesc;
98 typedef int TunableParam;
99
100 typedef unsigned int uint;
101 typedef long int int64;
102 typedef uint64_t VarType;
103 #endif