[Aptitude-svn-commit] r3984 - in branches/aptitude-0.3/aptitude: .
src src/cmdline src/generic src/generic/problemresolver tests
Daniel Burrows
dburrows at costa.debian.org
Mon Aug 29 22:57:34 UTC 2005
Author: dburrows
Date: Mon Aug 29 22:57:29 2005
New Revision: 3984
Modified:
branches/aptitude-0.3/aptitude/ChangeLog
branches/aptitude-0.3/aptitude/src/broken_indicator.cc
branches/aptitude-0.3/aptitude/src/cmdline/cmdline_resolver.cc
branches/aptitude-0.3/aptitude/src/generic/aptcache.cc
branches/aptitude-0.3/aptitude/src/generic/problemresolver/problemresolver.h
branches/aptitude-0.3/aptitude/src/generic/problemresolver/solution.h
branches/aptitude-0.3/aptitude/src/generic/problemresolver/test.cc
branches/aptitude-0.3/aptitude/src/solution_fragment.cc
branches/aptitude-0.3/aptitude/src/solution_screen.cc
branches/aptitude-0.3/aptitude/tests/test_resolver.cc
Log:
Use imm::* instead of std::*.
Modified: branches/aptitude-0.3/aptitude/ChangeLog
==============================================================================
--- branches/aptitude-0.3/aptitude/ChangeLog (original)
+++ branches/aptitude-0.3/aptitude/ChangeLog Mon Aug 29 22:57:29 2005
@@ -1,5 +1,11 @@
2005-08-29 Daniel Burrows <dburrows at debian.org>
+ * src/broken_indicator.cc, src/cmdline/cmdline_resolver.cc, src/generic/aptcache.cc, src/generic/problemresolver/problemresolver.h, src/generic/problemresolver/solution.h, src/generic/problemresolver/test.cc, src/solution_fragment.cc, src/solution_screen.cc, tests/test_resolver.cc:
+
+ Use the new imm::* containers instead of std::*. This makes
+ everything much slower...but on the upside, aptitude no longer
+ eats all my memory before giving up on a search.
+
* src/generic/immset.h, tests/test_wtree.cc:
Add a 'node' member type to imm::map, and write comparison and
Modified: branches/aptitude-0.3/aptitude/src/broken_indicator.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/src/broken_indicator.cc (original)
+++ branches/aptitude-0.3/aptitude/src/broken_indicator.cc Mon Aug 29 22:57:29 2005
@@ -128,8 +128,8 @@
int install_count=0, remove_count=0, keep_count=0, upgrade_count=0, downgrade_count=0;
- for(std::map<aptitude_universe::package, aptitude_solution::action>::const_iterator i
- = sol.get_actions().begin();
+ for(imm::map<aptitude_universe::package, aptitude_solution::action>::const_iterator
+ i = sol.get_actions().begin();
i != sol.get_actions().end(); ++i)
{
pkgCache::PkgIterator pkg=i->first.get_pkg();
Modified: branches/aptitude-0.3/aptitude/src/cmdline/cmdline_resolver.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/src/cmdline/cmdline_resolver.cc (original)
+++ branches/aptitude-0.3/aptitude/src/cmdline/cmdline_resolver.cc Mon Aug 29 22:57:29 2005
@@ -54,8 +54,8 @@
static fragment *solution_story(const aptitude_solution &s)
{
std::vector<aptitude_solution::action> actions;
- for(map<aptitude_universe::package, aptitude_solution::action>::const_iterator i
- = s.get_actions().begin(); i != s.get_actions().end(); ++i)
+ for(imm::map<aptitude_universe::package, aptitude_solution::action>::const_iterator
+ i = s.get_actions().begin(); i != s.get_actions().end(); ++i)
actions.push_back(i->second);
sort(actions.begin(), actions.end(), aptitude_solution::action_id_compare());
Modified: branches/aptitude-0.3/aptitude/src/generic/aptcache.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/src/generic/aptcache.cc (original)
+++ branches/aptitude-0.3/aptitude/src/generic/aptcache.cc Mon Aug 29 22:57:29 2005
@@ -1547,9 +1547,9 @@
begin_action_group();
- for(map<aptitude_resolver::package,
- aptitude_resolver::action>::const_iterator i=sol.get_actions().begin();
- i!=sol.get_actions().end(); ++i)
+ for(imm::map<aptitude_resolver::package, aptitude_resolver::action>::const_iterator
+ i = sol.get_actions().begin();
+ i != sol.get_actions().end(); ++i)
{
pkgCache::PkgIterator pkg=i->first.get_pkg();
pkgCache::VerIterator curver=pkg.CurrentVer();
Modified: branches/aptitude-0.3/aptitude/src/generic/problemresolver/problemresolver.h
==============================================================================
--- branches/aptitude-0.3/aptitude/src/generic/problemresolver/problemresolver.h (original)
+++ branches/aptitude-0.3/aptitude/src/generic/problemresolver/problemresolver.h Mon Aug 29 22:57:29 2005
@@ -211,9 +211,9 @@
else if(s2.get_action_score() < s1.get_action_score())
return false;
- const std::map<package,action>
+ const imm::map<package,action>
&a1=s1.get_actions(), &a2=s2.get_actions();
- const std::set<dep>
+ const imm::set<dep>
&us1=s1.get_unresolved_soft_deps(), &us2=s2.get_unresolved_soft_deps();
@@ -304,12 +304,12 @@
/** Stores conflicts: sets of installations that have been
* determined to be mutually incompatible.
*/
- std::set<std::map<package, action> > conflicts;
+ std::set<imm::map<package, action> > conflicts;
/** The initial set of broken dependencies. Kept here for use in
* the stupid-elimination algorithm.
*/
- std::set<dep> initial_broken;
+ imm::set<dep> initial_broken;
/** Stores versions that have been rejected by the user; distinct
* from the per-solution reject sets that track changes on a single
@@ -332,7 +332,7 @@
typedef std::set<std::pair<version, version> > stupid_table;
- std::ostream &dump_conflict(std::ostream &out, const std::map<package, action> &conflict) const;
+ std::ostream &dump_conflict(std::ostream &out, const imm::map<package, action> &conflict) const;
std::ostream &dump_conflict(std::ostream &out, const action &act) const;
@@ -358,11 +358,11 @@
/** \return \b true if each element of pc2 is matched by an element
* in pc1.
*/
- static bool conflict_matches(const typename std::map<package, action> &c,
- const typename std::map<package, action> &acts)
+ static bool conflict_matches(const typename imm::map<package, action> &c,
+ const typename imm::map<package, action> &acts)
{
- typename std::map<package, action>::const_iterator ci = c.begin();
- typename std::map<package, action>::const_iterator ai = acts.begin();
+ typename imm::map<package, action>::const_iterator ci = c.begin();
+ typename imm::map<package, action>::const_iterator ai = acts.begin();
while(ci != c.end() &&
ai != acts.end())
@@ -389,10 +389,10 @@
* \return a conflict matched by m, or conflicts.end() if no such
* conflict exists.
*/
- typename std::set<std::map<package, action> >::const_iterator
- matches_any_conflict(const std::map<package, action> &m) const
+ typename std::set<imm::map<package, action> >::const_iterator
+ matches_any_conflict(const imm::map<package, action> &m) const
{
- for(typename std::set<std::map<package, action> >::const_iterator ci = conflicts.begin();
+ for(typename std::set<imm::map<package, action> >::const_iterator ci = conflicts.begin();
ci != conflicts.end(); ++ci)
if(conflict_matches(*ci, m))
return ci;
@@ -403,7 +403,7 @@
/** Test whether the given solution contains a conflict. */
bool contains_conflict(const solution &s) const
{
- typename std::set<std::map<package, action> >::const_iterator
+ typename std::set<imm::map<package, action> >::const_iterator
found = matches_any_conflict(s.get_actions());
bool rval = (found != conflicts.end());
@@ -424,9 +424,9 @@
* redundant and will be dropped), then tests whether any existing
* conflicts will be made redundant by this conflict.
*/
- void add_conflict(const std::map<package, action> &conflict)
+ void add_conflict(const imm::map<package, action> &conflict)
{
- typename std::set<std::map<package, action> >::const_iterator
+ typename std::set<imm::map<package, action> >::const_iterator
found = matches_any_conflict(conflict);
if(found != conflicts.end())
@@ -442,7 +442,7 @@
}
else
{
- for(typename std::set<std::map<package, action> >::const_iterator ci = conflicts.begin(), cj;
+ for(typename std::set<imm::map<package, action> >::const_iterator ci = conflicts.begin(), cj;
ci != conflicts.end(); ci = cj)
{
cj = ci;
@@ -1184,22 +1184,10 @@
*/
bool contains_rejected(const solution &s) const
{
- typename std::set<version>::const_iterator ur_iter
- = user_rejected.begin();
-
- typename std::map<package, action>::const_iterator sa_iter
- = s.get_actions().begin();
-
- while(ur_iter != user_rejected.end() &&
- sa_iter != s.get_actions().end())
- {
- if(*ur_iter == sa_iter->second.ver)
- return true;
- else if(*ur_iter < sa_iter->second.ver)
- ++ur_iter;
- else
- ++sa_iter;
- }
+ for(typename std::set<version>::const_iterator ur_iter
+ = user_rejected.begin(); ur != user_rejected.end(); ++ur)
+ if(version_of(ur->get_package()) == *ur)
+ return true;
return false;
}
@@ -1209,7 +1197,10 @@
typename std::set<dep>::const_iterator uh_iter
= user_hardened.begin();
- typename std::set<dep>::const_iterator su_iter
+ if(uh_iter == user_hardened.end())
+ return false;
+
+ typename imm::set<dep>::const_iterator su_iter
= s.get_unresolved_soft_deps().begin();
while(uh_iter != user_hardened.end() &&
@@ -1246,7 +1237,7 @@
// Check (very slowly) whether we made a decision where we had
// the opportunity to use this version (and of course didn't).
- for(typename std::map<package, action>::const_iterator si = s.get_actions().begin();
+ for(typename imm::map<package, action>::const_iterator si = s.get_actions().begin();
si != s.get_actions().end(); ++si)
if(si->second.d.solved_by(*ai))
{
@@ -1440,20 +1431,22 @@
{
assert(v != cur);
- typename std::map<version, dep>::const_iterator found
- = s.get_forbidden_versions().find(v);
+ typename imm::map<version, dep>::node found
+ = s.get_forbidden_versions().lookup(v);
- if(found == s.get_forbidden_versions().end())
+ if(!found.isValid())
return true;
else
{
+ const dep &found_d = found.getVal().second;
+
if(debug)
std::cout << "Discarding " << p.get_name() << " "
<< v.get_name() << ": forbidden by the resolution of "
- << found->second << std::endl;
+ << found_d << std::endl;
- out_act.ver = s.version_of(found->second.get_source().get_package());
- out_act.d = found->second;
+ out_act.ver = s.version_of(found_d.get_source().get_package());
+ out_act.d = found_d;
out_act.from_dep_source = true;
return false;
@@ -1465,29 +1458,31 @@
* Handles the case in which the conflictor subsumes an existing
* element of the set.
*/
- void insert_conflictor(std::map<package, action> &conflict,
+ void insert_conflictor(imm::map<package, action> &conflict,
const action &act) const
{
package p = act.ver.get_package();
- typename std::map<package, action>::const_iterator found
- = conflict.find(p);
+ typename imm::map<package, action>::node found
+ = conflict.lookup(p);
- if(found == conflict.end())
- conflict[p]=act;
+ if(!found.isValid())
+ conflict.put(p, act);
else
{
+ const action &found_act = found.getVal().second;
+
action a2 = act;
- assert(found->second.ver == act.ver);
+ assert(found_act.ver == act.ver);
if(a2.from_dep_source)
{
- if(found->second.from_dep_source)
- assert(a2.d == found->second.d);
+ if(found_act.from_dep_source)
+ assert(a2.d == found_act.d);
else
a2.from_dep_source = false;
}
- conflict[p] = a2;
+ conflict.put(p, a2);
}
}
@@ -1569,7 +1564,7 @@
const dep &d,
const version &v,
bool from_dep_source,
- std::map<package, action> &conflict,
+ imm::map<package, action> &conflict,
const SolutionGenerator &generator) const
{
action conflictor;
@@ -1598,10 +1593,10 @@
// several rather expensive steps in the successor routine
// (most notably the formation of the new broken packages
// set).
- std::map<package, action> new_acts = s.get_actions();
- new_acts[v.get_package()] = act;
+ imm::map<package, action> new_acts = s.get_actions();
+ new_acts.put(v.get_package(), act);
- typename std::set<std::map<package, action> >::const_iterator
+ typename std::set<imm::map<package, action> >::const_iterator
found = matches_any_conflict(new_acts);
if(found == conflicts.end())
@@ -1618,7 +1613,7 @@
std::cout << std::endl;
}
- for(typename std::map<package, action>::const_iterator ci
+ for(typename imm::map<package, action>::const_iterator ci
= found->begin(); ci != found->end(); ++ci)
{
// Discard the version that we were trying to install,
@@ -1646,15 +1641,15 @@
template<typename SolutionGenerator>
void generate_successors(const solution &s,
const dep &d,
- std::map<package, action> &conflict,
+ imm::map<package, action> &conflict,
const SolutionGenerator &generator) const
{
version source = d.get_source();
- typename std::map<package, action>::const_iterator
- source_found = s.get_actions().find(source.get_package());
+ typename imm::map<package, action>::node
+ source_found = s.get_actions().lookup(source.get_package());
// Try moving the source, if it is legal to do so
- if(source_found != s.get_actions().end())
+ if(source_found.isValid())
insert_conflictor(conflict, action(source, d, false, -1));
else
{
@@ -1708,7 +1703,7 @@
// iterating over.
solution starting_solution = curr;
- for(typename std::set<dep>::const_iterator bi=starting_solution.get_broken().begin();
+ for(typename imm::set<dep>::const_iterator bi=starting_solution.get_broken().begin();
bi!=starting_solution.get_broken().end(); ++bi)
{
@@ -1742,7 +1737,7 @@
abort();
}
- std::map<package, action> conflict;
+ imm::map<package, action> conflict;
int num_successors = 0;
@@ -1791,14 +1786,14 @@
// First try to enqueue stuff related to a dependency that the
// user constrained; then just go for a free-for-all.
- for(typename std::set<dep>::const_iterator bi=curr.get_broken().begin();
+ for(typename imm::set<dep>::const_iterator bi=curr.get_broken().begin();
bi!=curr.get_broken().end() && (nsols == 0 ||
nsols < max_successors); ++bi)
if(impinges_user_constraint(*bi))
{
// Is it possible to take this out somehow?
- std::map<package, action> conflict;
+ imm::map<package, action> conflict;
if(debug)
std::cout << "Generating successors for " << *bi
@@ -1810,12 +1805,12 @@
nsols += v.size();
}
- for(typename std::set<dep>::const_iterator bi=curr.get_broken().begin();
+ for(typename imm::set<dep>::const_iterator bi=curr.get_broken().begin();
bi!=curr.get_broken().end() && (nsols == 0 ||
nsols < max_successors); ++bi)
{
// Is it possible to take this out somehow?
- std::map<package, action> conflict;
+ imm::map<package, action> conflict;
if(debug)
std::cout << "Generating successors for " << *bi
@@ -2256,11 +2251,11 @@
}
template<class PackageUniverse>
-std::ostream &generic_problem_resolver<PackageUniverse>::dump_conflict(std::ostream &out, const typename std::map<typename PackageUniverse::package, typename generic_solution<PackageUniverse>::action> &act) const
+std::ostream &generic_problem_resolver<PackageUniverse>::dump_conflict(std::ostream &out, const typename imm::map<typename PackageUniverse::package, typename generic_solution<PackageUniverse>::action> &act) const
{
out << "(";
- for(typename std::map<typename PackageUniverse::package, typename generic_solution<PackageUniverse>::action>::const_iterator ci
+ for(typename imm::map<typename PackageUniverse::package, typename generic_solution<PackageUniverse>::action>::const_iterator ci
= act.begin(); ci != act.end(); ++ci)
{
if(ci != act.begin())
Modified: branches/aptitude-0.3/aptitude/src/generic/problemresolver/solution.h
==============================================================================
--- branches/aptitude-0.3/aptitude/src/generic/problemresolver/solution.h (original)
+++ branches/aptitude-0.3/aptitude/src/generic/problemresolver/solution.h Mon Aug 29 22:57:29 2005
@@ -23,8 +23,7 @@
#define SOLUTION_H
#include <iostream>
-#include <map>
-#include <set>
+#include <src/generic/immset.h>
/** Represents the current score weights for a resolver. Used to
* calculate scores at the time a solution is instantiated.
@@ -152,13 +151,13 @@
* can be added in later one way or another, though. (eg,
* storing the DAG structure after all?)
*/
- std::map<package, action> actions;
+ imm::map<package, action> actions;
/** The full list of currently broken dependencies. */
- std::set<dep> broken_deps;
+ imm::set<dep> broken_deps;
/** The set of soft dependencies being left unresolved. */
- std::set<dep> unresolved_soft_deps;
+ imm::set<dep> unresolved_soft_deps;
/** A set of versions that have been "locked out" by this
* solution. Primarily used to optimize the common case of
@@ -166,7 +165,7 @@
* dependency chain. (this allows us to easily force the search
* in the direction it has to go)
*/
- std::map<version, dep> forbidden_versions;
+ imm::map<version, dep> forbidden_versions;
/** The score of this solution. */
int score;
@@ -185,10 +184,10 @@
void decref() const {assert(refcount>0); if(--refcount==0) delete this;}
/** Construct a new solution_rep directly. */
- solution_rep(const std::map<package, action> &_actions,
- const std::set<dep> &_broken_deps,
- const std::set<dep> &_unresolved_soft_deps,
- const std::map<version, dep> &_forbidden_versions,
+ solution_rep(const imm::map<package, action> &_actions,
+ const imm::set<dep> &_broken_deps,
+ const imm::set<dep> &_unresolved_soft_deps,
+ const imm::map<version, dep> &_forbidden_versions,
int _score,
int _action_score)
: actions(_actions),
@@ -201,22 +200,22 @@
{
}
- const std::set<dep> &get_broken_deps() const
+ const imm::set<dep> &get_broken_deps() const
{
return broken_deps;
}
- const std::set<dep> &get_unresolved_soft_deps() const
+ const imm::set<dep> &get_unresolved_soft_deps() const
{
return unresolved_soft_deps;
}
- const std::map<package, action> &get_actions() const
+ const imm::map<package, action> &get_actions() const
{
return actions;
}
- const std::map<version, dep> &get_forbidden_versions() const
+ const imm::map<version, dep> &get_forbidden_versions() const
{
return forbidden_versions;
}
@@ -226,11 +225,12 @@
version version_of(const package &pkg) const
{
- typename std::map<package, action>::const_iterator found=actions.find(pkg);
- if(found == actions.end())
+ typename imm::map<package, action>::node found
+ = actions.lookup(pkg);
+ if(!found.isValid())
return pkg.current_version();
else
- return found->second.ver;
+ return found.getVal().second.ver;
}
/** \return true iff this solution touches the given package. */
@@ -256,20 +256,20 @@
*/
struct solution_map_wrapper
{
- const std::map<package, action> &actions;
+ const imm::map<package, action> &actions;
public:
- solution_map_wrapper(const std::map<package, action> &_actions)
+ solution_map_wrapper(const imm::map<package, action> &_actions)
:actions(_actions)
{
}
version version_of(const package &p) const
{
- typename std::map<package, action>::const_iterator found
- = actions.find(p);
+ typename imm::map<package, action>::node found
+ = actions.lookup(p);
- if(found != actions.end())
- return found->second.ver;
+ if(found.isValid())
+ return found.getVal().second.ver;
else
return p.current_version();
}
@@ -286,16 +286,16 @@
}
/** Generate the root node for a search in the given universe. */
- static generic_solution root_node(const std::set<dep> &initial_broken,
+ static generic_solution root_node(const imm::set<dep> &initial_broken,
const PackageUniverse &universe,
const solution_weights &weights)
{
int score = initial_broken.size() * weights.broken_score;
- return generic_solution(new solution_rep(std::map<package, action>(),
+ return generic_solution(new solution_rep(imm::map<package, action>(),
initial_broken,
- std::set<dep>(),
- std::map<version, dep>(),
+ imm::set<dep>(),
+ imm::map<version, dep>(),
score,
0));
}
@@ -316,19 +316,19 @@
{
// NB: as I fully expect to move to a scheme of shared-memory
// sets/maps, the implicit copies here will go away eventually.
- std::set<dep> broken_deps = s.get_broken();
- std::map<package, action> actions = s.get_actions();
- std::map<version, dep> forbidden_versions = s.get_forbidden_versions();
- std::set<dep> unresolved_soft_deps = s.get_unresolved_soft_deps();
+ imm::set<dep> broken_deps = s.get_broken();
+ imm::map<package, action> actions = s.get_actions();
+ imm::map<version, dep> forbidden_versions = s.get_forbidden_versions();
+ imm::set<dep> unresolved_soft_deps = s.get_unresolved_soft_deps();
int action_score = s.get_action_score();
for(a_iter ai = abegin; ai != aend; ++ai)
{
const action &a = *ai;
- assert(actions.find(a.ver.get_package()) == actions.end());
+ assert(!actions.domain_contains(a.ver.get_package()));
assert(a.ver != a.ver.get_package().current_version());
- actions[a.ver.get_package()] = a;
+ actions.put(a.ver.get_package(), a);
action_score += weights.step_score;
action_score += weights.version_scores[a.ver.get_id()];
@@ -338,7 +338,7 @@
{
for(typename dep::solver_iterator si = a.d.solvers_begin();
!si.end(); ++si)
- forbidden_versions[*si] = a.d;
+ forbidden_versions.put(*si, a.d);
}
@@ -354,7 +354,7 @@
{
dep rd = *rdi;
- if(unresolved_soft_deps.find(rd) == unresolved_soft_deps.end() &&
+ if(!unresolved_soft_deps.contains(rd) &&
(rd).broken_under(tmpsol))
broken_deps.insert(rd);
else
@@ -371,7 +371,7 @@
{
dep rd = *rdi;
- if(unresolved_soft_deps.find(rd) == unresolved_soft_deps.end() &&
+ if(!unresolved_soft_deps.contains(rd) &&
(rd).broken_under(tmpsol))
broken_deps.insert(rd);
else
@@ -396,7 +396,7 @@
{
dep d = *di;
- if(unresolved_soft_deps.find(d) == unresolved_soft_deps.end() &&
+ if(!unresolved_soft_deps.contains(d) &&
(d).broken_under(tmpsol))
broken_deps.insert(d);
}
@@ -407,11 +407,8 @@
{
const dep &d = *ui;
- typename std::set<dep>::const_iterator found
- = broken_deps.find(d);
-
- assert(found != broken_deps.end());
- broken_deps.erase(found);
+ assert(broken_deps.contains(d));
+ broken_deps.erase(d);
unresolved_soft_deps.insert(d);
}
@@ -496,22 +493,22 @@
* in this solution. The list will live at least as long as
* the reference from which it was retrieved.
*/
- const std::set<dep> &get_broken() const
+ const imm::set<dep> &get_broken() const
{
return real_soln->get_broken_deps();
}
- const std::set<dep> &get_unresolved_soft_deps() const
+ const imm::set<dep> &get_unresolved_soft_deps() const
{
return real_soln->get_unresolved_soft_deps();
}
- const std::map<package, action> &get_actions() const
+ const imm::map<package, action> &get_actions() const
{
return real_soln->get_actions();
}
- const std::map<version, dep> &get_forbidden_versions() const
+ const imm::map<version, dep> &get_forbidden_versions() const
{
return real_soln->get_forbidden_versions();
}
@@ -546,7 +543,7 @@
void dump(std::ostream &out) const
{
out << "<";
- for(typename std::map<package, action>::const_iterator i=get_actions().begin();
+ for(typename imm::map<package, action>::const_iterator i=get_actions().begin();
i!=get_actions().end(); ++i)
{
if(i!=get_actions().begin())
@@ -559,7 +556,7 @@
if(!get_unresolved_soft_deps().empty())
{
out << "<!";
- for(typename std::set<dep>::const_iterator i
+ for(typename imm::set<dep>::const_iterator i
= get_unresolved_soft_deps().begin();
i != get_unresolved_soft_deps().end(); ++i)
{
@@ -573,7 +570,7 @@
out << "[";
- for(typename std::set<dep>::const_iterator i=get_broken().begin();
+ for(typename imm::set<dep>::const_iterator i=get_broken().begin();
i!=get_broken().end(); ++i)
{
if(i!=get_broken().begin())
@@ -586,7 +583,7 @@
if(!get_forbidden_versions().empty())
{
out << "!!";
- for(typename std::map<version, dep>::const_iterator i=get_forbidden_versions().begin();
+ for(typename imm::map<version, dep>::const_iterator i=get_forbidden_versions().begin();
i!=get_forbidden_versions().end(); ++i)
{
if(i!=get_forbidden_versions().begin())
Modified: branches/aptitude-0.3/aptitude/src/generic/problemresolver/test.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/src/generic/problemresolver/test.cc (original)
+++ branches/aptitude-0.3/aptitude/src/generic/problemresolver/test.cc Mon Aug 29 22:57:29 2005
@@ -314,8 +314,8 @@
bool equal=true;
- map<dummy_universe::package, dummy_universe::version>::const_iterator expect_iter=expected.begin();
- map<dummy_universe::package, dummy_resolver::action>::const_iterator soln_iter=next_soln.get_actions().begin();
+ std::map<dummy_universe::package, dummy_universe::version>::const_iterator expect_iter=expected.begin();
+ imm::map<dummy_universe::package, dummy_resolver::action>::const_iterator soln_iter=next_soln.get_actions().begin();
while(equal &&
expect_iter != expected.end() &&
Modified: branches/aptitude-0.3/aptitude/src/solution_fragment.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/src/solution_fragment.cc (original)
+++ branches/aptitude-0.3/aptitude/src/solution_fragment.cc Mon Aug 29 22:57:29 2005
@@ -175,7 +175,7 @@
sort(upgrade_packages.begin(), upgrade_packages.end(),
ver_name_lt());
- for(std::map<aptitude_universe::package,
+ for(imm::map<aptitude_universe::package,
aptitude_solution::action>::const_iterator i=sol.get_actions().begin();
i!=sol.get_actions().end(); ++i)
{
@@ -289,13 +289,13 @@
fragments.push_back(newline_fragment());
}
- const set<aptitude_universe::dep> &unresolved = sol.get_unresolved_soft_deps();
+ const imm::set<aptitude_universe::dep> &unresolved = sol.get_unresolved_soft_deps();
if(!unresolved.empty())
{
fragments.push_back(fragf(_("Leave the following dependencies unresolved:%n")));
- for(set<aptitude_universe::dep>::const_iterator i = unresolved.begin();
+ for(imm::set<aptitude_universe::dep>::const_iterator i = unresolved.begin();
i != unresolved.end(); ++i)
fragments.push_back(fragf("%ls%n", dep_text((*i).get_dep()).c_str()));
}
Modified: branches/aptitude-0.3/aptitude/src/solution_screen.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/src/solution_screen.cc (original)
+++ branches/aptitude-0.3/aptitude/src/solution_screen.cc Mon Aug 29 22:57:29 2005
@@ -114,7 +114,7 @@
vector<aptitude_solution::action> &upgrade_actions)
{
- for(std::map<aptitude_universe::package,
+ for(imm::map<aptitude_universe::package,
aptitude_solution::action>::const_iterator i=sol.get_actions().begin();
i!=sol.get_actions().end(); ++i)
switch(analyze_action(i->second.ver))
@@ -637,7 +637,7 @@
{
vector<aptitude_solution::action> actions;
- for(map<aptitude_universe::package, aptitude_solution::action>::const_iterator
+ for(imm::map<aptitude_universe::package, aptitude_solution::action>::const_iterator
i = sol.get_actions().begin() ; i != sol.get_actions().end(); ++i)
actions.push_back(i->second);
@@ -738,13 +738,13 @@
}
- const set<aptitude_universe::dep> &unresolved = sol.get_unresolved_soft_deps();
+ const imm::set<aptitude_universe::dep> &unresolved = sol.get_unresolved_soft_deps();
if(!unresolved.empty())
{
vs_subtree_generic *unresolved_tree = new label_tree(transcode(_("Leave the following recommendations unresolved:")));
- for(set<aptitude_universe::dep>::const_iterator i = unresolved.begin();
+ for(imm::set<aptitude_universe::dep>::const_iterator i = unresolved.begin();
i != unresolved.end(); ++i)
unresolved_tree->add_child(new solution_unresolved_item(*i));
Modified: branches/aptitude-0.3/aptitude/tests/test_resolver.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/tests/test_resolver.cc (original)
+++ branches/aptitude-0.3/aptitude/tests/test_resolver.cc Mon Aug 29 22:57:29 2005
@@ -141,11 +141,11 @@
a_iter abegin, a_iter aend,
u_iter ubegin, u_iter uend)
{
- std::map<dummy_universe::package, dummy_solution::action> actions = parent.get_actions();
- std::set<dummy_universe::dep> unresolved = parent.get_unresolved_soft_deps();
+ imm::map<dummy_universe::package, dummy_solution::action> actions = parent.get_actions();
+ imm::set<dummy_universe::dep> unresolved = parent.get_unresolved_soft_deps();
for(a_iter ai = abegin; ai != aend; ++ai)
- actions[(*ai).ver.get_package()] = *ai;
+ actions.put((*ai).ver.get_package(), *ai);
for(u_iter ui = ubegin; ui != uend; ++ui)
unresolved.insert(*ui);
@@ -173,7 +173,7 @@
solution_weights weights(0, 0, 0, 0, u.get_version_count());
- std::set<dummy_universe::dep> u_broken;
+ imm::set<dummy_universe::dep> u_broken;
for(dummy_universe::broken_dep_iterator bi = u.broken_begin();
!bi.end(); ++bi)
u_broken.insert(*bi);
More information about the Aptitude-svn-commit
mailing list