bool hasNext();
Boolean * next();
CMEMALLOC;
+
private:
SetIteratorBooleanEdge * solverit;
HashsetBoolean discovered;
class ElementIterator {
public:
+ ElementIterator(CSolver *_solver);
+ ~ElementIterator();
+ bool hasNext();
+ Element * next();
CMEMALLOC;
+
private:
BooleanIterator bit;
-};
+ BooleanPredicate *base;
+ uint baseindex;
+ HashsetElement discovered;
+
+ Vector<Element *> element;
+ Vector<uint> index;
+ void updateNext();
+};
#endif