]> git.saurik.com Git - apt.git/commit
prepare cachesets for -std=c++11
authorDavid Kalnischkies <david@kalnischkies.de>
Wed, 8 Jul 2015 14:37:04 +0000 (16:37 +0200)
committerDavid Kalnischkies <david@kalnischkies.de>
Mon, 10 Aug 2015 15:25:26 +0000 (17:25 +0200)
commitffb081b79263a699a612583fcf1b9957b5900a77
treeb719cf389f1240286e1f1d0a76e90ce6451818d9
parent4e03c47de15164f2656d9655edab6fb3570cb2f2
prepare cachesets for -std=c++11

The "problem" is mostly in the erase() definitions as they slightly
conflict and in pre-c++11 are not uniformly in different containers.
By differenciating based on the standard we can provide erase() methods
for both standards – and as the method is in a template and inline we
don't need to worry about symbols here.

The rest is adding wrappings for the new forward_list and unordered_set
containers and correcting our iterators to use the same trait as the
iterator they are wrapping instead of having all of them be simple
forward iterators. This allows the use of specialized algorithms which
are picked based on iterator_traits and implementing them all is simple
to do as we can declare all methods easily and only if they are called
they will generate errors (if the underlying iterator doesn't support
these).

Git-Dch: Ignore
apt-pkg/cacheset.h
apt-private/private-install.cc