Fix tabbing
[satune.git] / src / AST / iterator.h
index b82ee37ee2c8dc0cf357ef5972b906b485714a20..5309934a78473948dceb536ea71a9184a548e379 100644 (file)
@@ -4,14 +4,15 @@
 #include "structs.h"
 
 class BooleanIterator {
- public:
-       BooleanIterator(CSolver * _solver);
+public:
+       BooleanIterator(CSolver *_solver);
        ~BooleanIterator();
        bool hasNext();
-       Boolean * next();
+       Boolean *next();
        CMEMALLOC;
- private:
-       SetIteratorBooleanEdge * solverit;
+
+private:
+       SetIteratorBooleanEdge *solverit;
        HashsetBoolean discovered;
        Vector<Boolean *> boolean;
        Vector<uint> index;
@@ -19,11 +20,23 @@ class BooleanIterator {
 };
 
 class ElementIterator {
- public:
+public:
+       ElementIterator(CSolver *_solver);
+       ~ElementIterator();
+       bool hasNext();
+       Element *next();
        CMEMALLOC;
- private:
+
+private:
        BooleanIterator bit;
-};
+       BooleanPredicate *base;
+       uint baseindex;
 
+       HashsetElement discovered;
+
+       Vector<Element *> element;
+       Vector<uint> index;
+       void updateNext();
+};
 
 #endif