8d2124073968ce7a8c4cea3c09df018671b1fd2f
[satune.git] / src / AST / order.h
1 #ifndef ORDER_H
2 #define ORDER_H
3 #include "classlist.h"
4 #include "mymemory.h"
5 #include "structs.h"
6 #include "ops.h"
7 #include "orderencoding.h"
8 #include "boolean.h"
9 #include "orderpair.h"
10
11 class Order {
12 public:
13         Order(OrderType type, Set *set);
14         ~Order();
15         OrderType type;
16         Set *set;
17         HashTableOrderPair *orderPairTable;
18         HashSetOrderElement *elementTable;
19         OrderGraph *graph;
20         Vector<BooleanOrder *> constraints;
21         OrderEncoding order;
22         void initializeOrderHashTable();
23         void initializeOrderElementsHashTable();
24         void addOrderConstraint(BooleanOrder *constraint);
25         void setOrderEncodingType(OrderEncodingType type);
26         MEMALLOC;
27 };
28
29 #endif