summaryrefslogtreecommitdiff
path: root/apt-pkg/cacheset.h
diff options
context:
space:
mode:
authorDavid Kalnischkies <kalnischkies@gmail.com>2012-02-11 18:54:48 +0100
committerDavid Kalnischkies <kalnischkies@gmail.com>2012-02-11 18:54:48 +0100
commit5eb9a474dca2f48a935c234357c3adc9b372423e (patch)
treebfde8a8f9189366fb19984113eadcd1fddce6a3d /apt-pkg/cacheset.h
parent6fddb156b51b443781aa376e60e443eda09d1cad (diff)
correctly ignore already (un)hold packages
Diffstat (limited to 'apt-pkg/cacheset.h')
-rw-r--r--apt-pkg/cacheset.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/apt-pkg/cacheset.h b/apt-pkg/cacheset.h
index 91d7eec1c..6f0a0e358 100644
--- a/apt-pkg/cacheset.h
+++ b/apt-pkg/cacheset.h
@@ -191,6 +191,8 @@ public: /*{{{*/
inline iterator operator++(int) { iterator tmp(*this); operator++(); return tmp; }
inline bool operator!=(iterator const &i) const { return _iter != i._iter; };
inline bool operator==(iterator const &i) const { return _iter == i._iter; };
+ inline iterator& operator=(iterator const &i) { _iter = i._iter; return *this; };
+ inline iterator& operator=(typename Container::iterator const &i) { _iter = i; return *this; };
friend std::ostream& operator<<(std::ostream& out, iterator i) { return operator<<(out, *i); }
};
/*}}}*/
@@ -201,7 +203,9 @@ public: /*{{{*/
bool empty() const { return _cont.empty(); };
void clear() { return _cont.clear(); };
+ //FIXME: on ABI break, replace the first with the second without bool
void erase(iterator position) { _cont.erase((typename Container::iterator)position); };
+ iterator& erase(iterator &position, bool) { return position = _cont.erase((typename Container::iterator)position); };
size_t erase(const pkgCache::PkgIterator x) { return _cont.erase(x); };
void erase(iterator first, iterator last) { _cont.erase(first, last); };
size_t size() const { return _cont.size(); };
@@ -507,6 +511,8 @@ public: /*{{{*/
inline iterator operator++(int) { iterator tmp(*this); operator++(); return tmp; }
inline bool operator!=(iterator const &i) const { return _iter != i._iter; };
inline bool operator==(iterator const &i) const { return _iter == i._iter; };
+ inline iterator& operator=(iterator const &i) { _iter = i._iter; return *this; };
+ inline iterator& operator=(typename Container::iterator const &i) { _iter = i; return *this; };
friend std::ostream& operator<<(std::ostream& out, iterator i) { return operator<<(out, *i); }
};
/*}}}*/
@@ -516,7 +522,9 @@ public: /*{{{*/
void insert(const_iterator begin, const_iterator end) { _cont.insert(begin, end); };
bool empty() const { return _cont.empty(); };
void clear() { return _cont.clear(); };
+ //FIXME: on ABI break, replace the first with the second without bool
void erase(iterator position) { _cont.erase((typename Container::iterator)position); };
+ iterator& erase(iterator &position, bool) { return position = _cont.erase((typename Container::iterator)position); };
size_t erase(const pkgCache::VerIterator x) { return _cont.erase(x); };
void erase(iterator first, iterator last) { _cont.erase(first, last); };
size_t size() const { return _cont.size(); };