Reduce unnecessary vector alloc/free
[satune.git] / src / AST / order.h
index cc8b45e4adc7774e6b3510ef66fa80309a82ebbd..866b1ab95ffa528501ce4056d10583279038273f 100644 (file)
 class Order {
 public:
        Order(OrderType type, Set *set);
-       ~Order();
+       virtual ~Order();
        OrderType type;
        Set *set;
-       HashtableOrderPair *orderPairTable;
        OrderGraph *graph;
        Order *clone(CSolver *solver, CloneMap *map);
+       void serialize(Serializer *serializer );
+       void print();
        Vector<BooleanOrder *> constraints;
        OrderEncoding encoding;
        void setOrderResolver(OrderResolver *_resolver) { ASSERT(encoding.resolver == NULL); encoding.resolver = _resolver;};
-       void initializeOrderHashtable();
        void initializeOrderElementsHashtable();
        void addOrderConstraint(BooleanOrder *constraint);
        void setOrderEncodingType(OrderEncodingType type);
+       HashtableOrderPair *getOrderPairTable();
        CMEMALLOC;
 };