#include "pooltypes.h"
#include "poolid.h"
#include "solvable.h"
+#include "bitmap.h"
#include "queue.h"
#include "strpool.h"
Offset whatprovidesdataoff; /* next free slot within whatprovidesdata */
int whatprovidesdataleft; /* number of 'free slots' within whatprovidesdata */
+ /* If nonzero, then consider only the solvables with Ids set in this
+ bitmap for solving. If zero, consider all solvables. */
+ Map *considered;
+
Id (*nscallback)(struct _Pool *, void *data, Id name, Id evr);
void *nscallbackdata;
return 0;
if (pool->id2arch && (s->arch > pool->lastarch || !pool->id2arch[s->arch]))
return 0;
+ if (pool->considered)
+ {
+ Id id = s - pool->solvables;
+ if (!MAPTST(pool->considered, id))
+ return 0;
+ }
return 1;
}