faster and still provides everything we need for the Cache generator
#include <stdio.h>
/*}}}*/
typedef vector<pkgIndexFile *>::iterator FileIterator;
#include <stdio.h>
/*}}}*/
typedef vector<pkgIndexFile *>::iterator FileIterator;
-template <typename Iter> std::set<Iter*> pkgCacheGenerator::Dynamic<Iter>::toReMap;
+template <typename Iter> std::vector<Iter*> pkgCacheGenerator::Dynamic<Iter>::toReMap(6);
// CacheGenerator::pkgCacheGenerator - Constructor /*{{{*/
// ---------------------------------------------------------------------
// CacheGenerator::pkgCacheGenerator - Constructor /*{{{*/
// ---------------------------------------------------------------------
if (UniqHash[i] != 0)
UniqHash[i] += (pkgCache::StringItem*) newMap - (pkgCache::StringItem*) oldMap;
if (UniqHash[i] != 0)
UniqHash[i] += (pkgCache::StringItem*) newMap - (pkgCache::StringItem*) oldMap;
- for (std::set<pkgCache::GrpIterator*>::const_iterator i = Dynamic<pkgCache::GrpIterator>::toReMap.begin();
+ for (std::vector<pkgCache::GrpIterator*>::const_iterator i = Dynamic<pkgCache::GrpIterator>::toReMap.begin();
i != Dynamic<pkgCache::GrpIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
i != Dynamic<pkgCache::GrpIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
- for (std::set<pkgCache::PkgIterator*>::const_iterator i = Dynamic<pkgCache::PkgIterator>::toReMap.begin();
+ for (std::vector<pkgCache::PkgIterator*>::const_iterator i = Dynamic<pkgCache::PkgIterator>::toReMap.begin();
i != Dynamic<pkgCache::PkgIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
i != Dynamic<pkgCache::PkgIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
- for (std::set<pkgCache::VerIterator*>::const_iterator i = Dynamic<pkgCache::VerIterator>::toReMap.begin();
+ for (std::vector<pkgCache::VerIterator*>::const_iterator i = Dynamic<pkgCache::VerIterator>::toReMap.begin();
i != Dynamic<pkgCache::VerIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
i != Dynamic<pkgCache::VerIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
- for (std::set<pkgCache::DepIterator*>::const_iterator i = Dynamic<pkgCache::DepIterator>::toReMap.begin();
+ for (std::vector<pkgCache::DepIterator*>::const_iterator i = Dynamic<pkgCache::DepIterator>::toReMap.begin();
i != Dynamic<pkgCache::DepIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
i != Dynamic<pkgCache::DepIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
- for (std::set<pkgCache::DescIterator*>::const_iterator i = Dynamic<pkgCache::DescIterator>::toReMap.begin();
+ for (std::vector<pkgCache::DescIterator*>::const_iterator i = Dynamic<pkgCache::DescIterator>::toReMap.begin();
i != Dynamic<pkgCache::DescIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
i != Dynamic<pkgCache::DescIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
- for (std::set<pkgCache::PrvIterator*>::const_iterator i = Dynamic<pkgCache::PrvIterator>::toReMap.begin();
+ for (std::vector<pkgCache::PrvIterator*>::const_iterator i = Dynamic<pkgCache::PrvIterator>::toReMap.begin();
i != Dynamic<pkgCache::PrvIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
i != Dynamic<pkgCache::PrvIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
- for (std::set<pkgCache::PkgFileIterator*>::const_iterator i = Dynamic<pkgCache::PkgFileIterator>::toReMap.begin();
+ for (std::vector<pkgCache::PkgFileIterator*>::const_iterator i = Dynamic<pkgCache::PkgFileIterator>::toReMap.begin();
i != Dynamic<pkgCache::PkgFileIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
} /*}}}*/
i != Dynamic<pkgCache::PkgFileIterator>::toReMap.end(); ++i)
(*i)->ReOwn(Cache, oldMap, newMap);
} /*}}}*/
#include <apt-pkg/pkgcache.h>
#include <apt-pkg/md5.h>
#include <apt-pkg/pkgcache.h>
#include <apt-pkg/md5.h>
class pkgSourceList;
class OpProgress;
class pkgSourceList;
class OpProgress;
friend class ListParser;
template<typename Iter> class Dynamic {
friend class ListParser;
template<typename Iter> class Dynamic {
- static std::set<Iter*> toReMap;
- Dynamic(Iter &It) : I(&It) {
- toReMap.insert(I);
+ static std::vector<Iter*> toReMap;
+ Dynamic(Iter &I) {
+ toReMap.push_back(&I);