5 * Created on August 7, 2017, 3:42 PM
10 #include "classlist.h"
15 HashSetOrderNode *nodes;
16 HashSetOrderEdge *edges;
20 OrderGraph *allocOrderGraph(Order *order);
21 OrderGraph *buildOrderGraph(Order *order);
22 OrderGraph *buildMustOrderGraph(Order *order);
23 void addOrderConstraintToOrderGraph(OrderGraph *graph, BooleanOrder *bOrder);
24 void addMustOrderConstraintToOrderGraph(OrderGraph *graph, BooleanOrder *bOrder);
25 OrderNode *getOrderNodeFromOrderGraph(OrderGraph *graph, uint64_t id);
26 OrderEdge *getOrderEdgeFromOrderGraph(OrderGraph *graph, OrderNode *begin, OrderNode *end);
27 OrderNode *lookupOrderNodeFromOrderGraph(OrderGraph *graph, uint64_t id);
28 OrderEdge *lookupOrderEdgeFromOrderGraph(OrderGraph *graph, OrderNode *begin, OrderNode *end);
29 void addOrderEdge(OrderGraph *graph, OrderNode *node1, OrderNode *node2, BooleanOrder *constr);
30 void addMustOrderEdge(OrderGraph *graph, OrderNode *node1, OrderNode *node2, BooleanOrder *constr);
31 void deleteOrderGraph(OrderGraph *graph);
32 OrderEdge *getInverseOrderEdge(OrderGraph *graph, OrderEdge *edge);
33 #endif/* ORDERGRAPH_H */