Adding an API for finalizing MutableSet
[satune.git] / src / AST / set.h
index 056794e35de355e8deeda51b1235843f889bf1bc..ef10b39bdaf3dc75830dde6d980a0a155b1293eb 100644 (file)
@@ -20,11 +20,13 @@ public:
        virtual ~Set();
        bool exists(uint64_t element);
        uint getSize();
-       VarType getType(){return type;}
-       uint64_t getNewUniqueItem(){return low++;}
+       VarType getType() {return type;}
+       uint64_t getNewUniqueItem() {return low++;}
        uint64_t getMemberAt(uint index);
        uint64_t getElement(uint index);
+       virtual bool isMutableSet() {return false;}
        virtual Set *clone(CSolver *solver, CloneMap *map);
+       virtual void serialize(Serializer* serializer);
        CMEMALLOC;
 protected:
        VarType type;
@@ -32,8 +34,9 @@ protected:
        uint64_t low;//also used to count unique items
        uint64_t high;
        Vector<uint64_t> *members;
-       
+
 };
 
+int intcompare(const void *p1, const void *p2);
 #endif/* SET_H */