#include "pooltypes.h"#include "pool.h"#include "repo.h"#include "queue.h"#include "bitmap.h"#include "transaction.h"#include "rules.h"#include "problems.h"Go to the source code of this file.
| Classes | |
| struct | _Solver | 
| Defines | |
| #define | SOLVER_SOLVABLE 0x01 | 
| #define | SOLVER_SOLVABLE_NAME 0x02 | 
| #define | SOLVER_SOLVABLE_PROVIDES 0x03 | 
| #define | SOLVER_SOLVABLE_ONE_OF 0x04 | 
| #define | SOLVER_SOLVABLE_REPO 0x05 | 
| #define | SOLVER_SOLVABLE_ALL 0x06 | 
| #define | SOLVER_SELECTMASK 0xff | 
| #define | SOLVER_NOOP 0x0000 | 
| #define | SOLVER_INSTALL 0x0100 | 
| #define | SOLVER_ERASE 0x0200 | 
| #define | SOLVER_UPDATE 0x0300 | 
| #define | SOLVER_WEAKENDEPS 0x0400 | 
| #define | SOLVER_NOOBSOLETES 0x0500 | 
| #define | SOLVER_LOCK 0x0600 | 
| #define | SOLVER_DISTUPGRADE 0x0700 | 
| #define | SOLVER_VERIFY 0x0800 | 
| #define | SOLVER_DROP_ORPHANED 0x0900 | 
| #define | SOLVER_USERINSTALLED 0x0a00 | 
| #define | SOLVER_JOBMASK 0xff00 | 
| #define | SOLVER_WEAK 0x010000 | 
| #define | SOLVER_ESSENTIAL 0x020000 | 
| #define | SOLVER_CLEANDEPS 0x040000 | 
| #define | SOLVER_SETEV 0x01000000 | 
| #define | SOLVER_SETEVR 0x02000000 | 
| #define | SOLVER_SETARCH 0x04000000 | 
| #define | SOLVER_SETVENDOR 0x08000000 | 
| #define | SOLVER_SETREPO 0x10000000 | 
| #define | SOLVER_NOAUTOSET 0x20000000 | 
| #define | SOLVER_SETMASK 0x2f000000 | 
| #define | SOLVER_INSTALL_SOLVABLE (SOLVER_INSTALL|SOLVER_SOLVABLE) | 
| #define | SOLVER_ERASE_SOLVABLE (SOLVER_ERASE|SOLVER_SOLVABLE) | 
| #define | SOLVER_INSTALL_SOLVABLE_NAME (SOLVER_INSTALL|SOLVER_SOLVABLE_NAME) | 
| #define | SOLVER_ERASE_SOLVABLE_NAME (SOLVER_ERASE|SOLVER_SOLVABLE_NAME) | 
| #define | SOLVER_INSTALL_SOLVABLE_PROVIDES (SOLVER_INSTALL|SOLVER_SOLVABLE_PROVIDES) | 
| #define | SOLVER_ERASE_SOLVABLE_PROVIDES (SOLVER_ERASE|SOLVER_SOLVABLE_PROVIDES) | 
| #define | SOLVER_INSTALL_SOLVABLE_UPDATE (SOLVER_UPDATE|SOLVER_SOLVABLE) | 
| #define | SOLVER_INSTALL_SOLVABLE_ONE_OF (SOLVER_INSTALL|SOLVER_SOLVABLE_ONE_OF) | 
| #define | SOLVER_WEAKEN_SOLVABLE_DEPS (SOLVER_WEAKENDEPS|SOLVER_SOLVABLE) | 
| #define | SOLVER_NOOBSOLETES_SOLVABLE (SOLVER_NOOBSOLETES|SOLVER_SOLVABLE) | 
| #define | SOLVER_NOOBSOLETES_SOLVABLE_NAME (SOLVER_NOOBSOLETES|SOLVER_SOLVABLE_NAME) | 
| #define | SOLVER_NOOBSOLETES_SOLVABLE_PROVIDES (SOLVER_NOOBSOLETES|SOLVER_SOLVABLE_PROVIDES) | 
| #define | SOLVER_PROBLEM_UPDATE_RULE SOLVER_RULE_UPDATE | 
| #define | SOLVER_PROBLEM_JOB_RULE SOLVER_RULE_JOB | 
| #define | SOLVER_PROBLEM_JOB_NOTHING_PROVIDES_DEP SOLVER_RULE_JOB_NOTHING_PROVIDES_DEP | 
| #define | SOLVER_PROBLEM_NOT_INSTALLABLE SOLVER_RULE_RPM_NOT_INSTALLABLE | 
| #define | SOLVER_PROBLEM_NOTHING_PROVIDES_DEP SOLVER_RULE_RPM_NOTHING_PROVIDES_DEP | 
| #define | SOLVER_PROBLEM_SAME_NAME SOLVER_RULE_RPM_SAME_NAME | 
| #define | SOLVER_PROBLEM_PACKAGE_CONFLICT SOLVER_RULE_RPM_PACKAGE_CONFLICT | 
| #define | SOLVER_PROBLEM_PACKAGE_OBSOLETES SOLVER_RULE_RPM_PACKAGE_OBSOLETES | 
| #define | SOLVER_PROBLEM_DEP_PROVIDERS_NOT_INSTALLABLE SOLVER_RULE_RPM_PACKAGE_REQUIRES | 
| #define | SOLVER_PROBLEM_SELF_CONFLICT SOLVER_RULE_RPM_SELF_CONFLICT | 
| #define | SOLVER_PROBLEM_RPM_RULE SOLVER_RULE_RPM | 
| #define | SOLVER_PROBLEM_DISTUPGRADE_RULE SOLVER_RULE_DISTUPGRADE | 
| #define | SOLVER_PROBLEM_INFARCH_RULE SOLVER_RULE_INFARCH | 
| #define | FOR_RULELITERALS(l, dp, r) | 
| #define | FOR_JOB_SELECT(p, pp, select, what) | 
| Typedefs | |
| typedef void(* | BestSolvableCb )(Pool *pool, Queue *canditates) | 
| typedef int(* | ArchCheckCb )(Pool *pool, Solvable *solvable1, Solvable *solvable2) | 
| typedef int(* | VendorCheckCb )(Pool *pool, Solvable *solvable1, Solvable *solvable2) | 
| typedef void(* | UpdateCandidateCb )(Pool *pool, Solvable *solvable, Queue *canditates) | 
| typedef struct _Solver | Solver | 
| Functions | |
| Solver * | solver_create (Pool *pool) | 
| void | solver_free (Solver *solv) | 
| void | solver_solve (Solver *solv, Queue *job) | 
| void | solver_run_sat (Solver *solv, int disablerules, int doweak) | 
| void | solver_reset (Solver *solv) | 
| int | solver_dep_installed (Solver *solv, Id dep) | 
| int | solver_splitprovides (Solver *solv, Id dep) | 
| void | solver_calculate_noobsmap (Pool *pool, Queue *job, Map *noobsmap) | 
| SolverRuleinfo | solver_problemruleinfo (Solver *solv, Queue *job, Id rid, Id *depp, Id *sourcep, Id *targetp) | 
| Id * | solver_create_decisions_obsoletesmap (Solver *solv) | 
| static int | solver_dep_fulfilled (Solver *solv, Id dep) | 
| static int | solver_is_supplementing (Solver *solv, Solvable *s) | 
| static int | solver_is_enhancing (Solver *solv, Solvable *s) | 
| void | solver_calc_duchanges (Solver *solv, DUChanges *mps, int nmps) | 
| int | solver_calc_installsizechange (Solver *solv) | 
| void | solver_trivial_installable (Solver *solv, Queue *pkgs, Queue *res) | 
| void | solver_find_involved (Solver *solv, Queue *installedq, Solvable *s, Queue *q) | 
| static void | solver_create_state_maps (Solver *solv, Map *installedmap, Map *conflictsmap) | 
| #define SOLVER_SOLVABLE 0x01 | 
Definition at line 223 of file solver.h.
Referenced by jobtodisablelist(), pool_job2str(), solver_createcleandepsmap(), solver_printsolution(), solver_select2str(), solver_solve(), and solver_take_solutionelement().
| #define SOLVER_SOLVABLE_NAME 0x02 | 
Definition at line 224 of file solver.h.
Referenced by jobtodisablelist(), pool_job2str(), and solver_select2str().
| #define SOLVER_SOLVABLE_PROVIDES 0x03 | 
Definition at line 225 of file solver.h.
Referenced by jobtodisablelist(), pool_job2str(), solver_printsolution(), and solver_select2str().
| #define SOLVER_SOLVABLE_ONE_OF 0x04 | 
| #define SOLVER_SOLVABLE_REPO 0x05 | 
Definition at line 227 of file solver.h.
Referenced by solver_createdupmaps(), and solver_select2str().
| #define SOLVER_SOLVABLE_ALL 0x06 | 
| #define SOLVER_SELECTMASK 0xff | 
Definition at line 230 of file solver.h.
Referenced by jobtodisablelist(), pool_job2str(), solver_calculate_noobsmap(), solver_createcleandepsmap(), solver_createdupmaps(), solver_printsolution(), solver_ruleinfo(), and solver_solve().
| #define SOLVER_NOOP 0x0000 | 
Definition at line 232 of file solver.h.
Referenced by pool_job2str(), and solver_take_solutionelement().
| #define SOLVER_INSTALL 0x0100 | 
Definition at line 233 of file solver.h.
Referenced by jobtodisablelist(), pool_job2str(), solver_printsolution(), solver_solve(), and solver_take_solutionelement().
| #define SOLVER_ERASE 0x0200 | 
Definition at line 234 of file solver.h.
Referenced by jobtodisablelist(), pool_job2str(), solver_createcleandepsmap(), solver_printsolution(), solver_solve(), and solver_take_solutionelement().
| #define SOLVER_UPDATE 0x0300 | 
Definition at line 235 of file solver.h.
Referenced by pool_job2str(), solver_printsolution(), and solver_solve().
| #define SOLVER_WEAKENDEPS 0x0400 | 
| #define SOLVER_NOOBSOLETES 0x0500 | 
Definition at line 237 of file solver.h.
Referenced by pool_job2str(), solver_calculate_noobsmap(), and solver_solve().
| #define SOLVER_LOCK 0x0600 | 
Definition at line 238 of file solver.h.
Referenced by pool_job2str(), solver_printsolution(), and solver_solve().
| #define SOLVER_DISTUPGRADE 0x0700 | 
Definition at line 239 of file solver.h.
Referenced by pool_job2str(), solver_createdupmaps(), and solver_solve().
| #define SOLVER_VERIFY 0x0800 | 
| #define SOLVER_DROP_ORPHANED 0x0900 | 
| #define SOLVER_USERINSTALLED 0x0a00 | 
Definition at line 242 of file solver.h.
Referenced by pool_job2str(), solver_createcleandepsmap(), and solver_solve().
| #define SOLVER_JOBMASK 0xff00 | 
Definition at line 244 of file solver.h.
Referenced by jobtodisablelist(), pool_job2str(), solver_calculate_noobsmap(), solver_createcleandepsmap(), solver_createdupmaps(), solver_printsolution(), and solver_solve().
| #define SOLVER_WEAK 0x010000 | 
| #define SOLVER_ESSENTIAL 0x020000 | 
Definition at line 247 of file solver.h.
Referenced by pool_job2str(), problems_sortcmp(), and refine_suggestion().
| #define SOLVER_CLEANDEPS 0x040000 | 
Definition at line 248 of file solver.h.
Referenced by pool_job2str(), solver_createcleandepsmap(), and solver_solve().
| #define SOLVER_SETEV 0x01000000 | 
| #define SOLVER_SETEVR 0x02000000 | 
| #define SOLVER_SETARCH 0x04000000 | 
| #define SOLVER_SETVENDOR 0x08000000 | 
| #define SOLVER_SETREPO 0x10000000 | 
| #define SOLVER_NOAUTOSET 0x20000000 | 
| #define SOLVER_SETMASK 0x2f000000 | 
| #define SOLVER_INSTALL_SOLVABLE (SOLVER_INSTALL|SOLVER_SOLVABLE) | 
| #define SOLVER_ERASE_SOLVABLE (SOLVER_ERASE|SOLVER_SOLVABLE) | 
| #define SOLVER_INSTALL_SOLVABLE_NAME (SOLVER_INSTALL|SOLVER_SOLVABLE_NAME) | 
| #define SOLVER_ERASE_SOLVABLE_NAME (SOLVER_ERASE|SOLVER_SOLVABLE_NAME) | 
| #define SOLVER_INSTALL_SOLVABLE_PROVIDES (SOLVER_INSTALL|SOLVER_SOLVABLE_PROVIDES) | 
| #define SOLVER_ERASE_SOLVABLE_PROVIDES (SOLVER_ERASE|SOLVER_SOLVABLE_PROVIDES) | 
| #define SOLVER_INSTALL_SOLVABLE_UPDATE (SOLVER_UPDATE|SOLVER_SOLVABLE) | 
| #define SOLVER_INSTALL_SOLVABLE_ONE_OF (SOLVER_INSTALL|SOLVER_SOLVABLE_ONE_OF) | 
| #define SOLVER_WEAKEN_SOLVABLE_DEPS (SOLVER_WEAKENDEPS|SOLVER_SOLVABLE) | 
| #define SOLVER_NOOBSOLETES_SOLVABLE (SOLVER_NOOBSOLETES|SOLVER_SOLVABLE) | 
| #define SOLVER_NOOBSOLETES_SOLVABLE_NAME (SOLVER_NOOBSOLETES|SOLVER_SOLVABLE_NAME) | 
| #define SOLVER_NOOBSOLETES_SOLVABLE_PROVIDES (SOLVER_NOOBSOLETES|SOLVER_SOLVABLE_PROVIDES) | 
| #define SOLVER_PROBLEM_JOB_NOTHING_PROVIDES_DEP SOLVER_RULE_JOB_NOTHING_PROVIDES_DEP | 
| #define SOLVER_PROBLEM_NOT_INSTALLABLE SOLVER_RULE_RPM_NOT_INSTALLABLE | 
| #define SOLVER_PROBLEM_NOTHING_PROVIDES_DEP SOLVER_RULE_RPM_NOTHING_PROVIDES_DEP | 
| #define SOLVER_PROBLEM_PACKAGE_CONFLICT SOLVER_RULE_RPM_PACKAGE_CONFLICT | 
| #define SOLVER_PROBLEM_PACKAGE_OBSOLETES SOLVER_RULE_RPM_PACKAGE_OBSOLETES | 
| #define SOLVER_PROBLEM_DEP_PROVIDERS_NOT_INSTALLABLE SOLVER_RULE_RPM_PACKAGE_REQUIRES | 
| #define SOLVER_PROBLEM_SELF_CONFLICT SOLVER_RULE_RPM_SELF_CONFLICT | 
| #define SOLVER_PROBLEM_DISTUPGRADE_RULE SOLVER_RULE_DISTUPGRADE | 
| #define FOR_RULELITERALS | ( | l, | |||
| dp, | |||||
| r | ) | 
Value:
for (l = r->d < 0 ? -r->d - 1 : r->d,                   \
         dp = !l ? &r->w2 : pool->whatprovidesdata + l,         \
         l = r->p; l; l = (dp != &r->w2 + 1 ? *dp++ : 0))
Definition at line 378 of file solver.h.
Referenced by convertsolution(), solver_addchoicerules(), solver_createcleandepsmap(), solver_disablechoicerules(), and solver_run_sat().
| #define FOR_JOB_SELECT | ( | p, | |||
| pp, | |||||
| select, | |||||
| what | ) | 
Value:
if (select == SOLVER_SOLVABLE_REPO || select == SOLVER_SOLVABLE_ALL) \ p = pp = 0; \ else for (pp = (select == SOLVER_SOLVABLE ? 0 : \ select == SOLVER_SOLVABLE_ONE_OF ? what : \ pool_whatprovides(pool, what)), \ p = (select == SOLVER_SOLVABLE ? what : pool->whatprovidesdata[pp++]) ; p ; p = pool->whatprovidesdata[pp++]) \ if (select != SOLVER_SOLVABLE_NAME || pool_match_nevr(pool, pool->solvables + p, what))
Definition at line 384 of file solver.h.
Referenced by jobtodisablelist(), solver_calculate_noobsmap(), solver_createcleandepsmap(), and solver_solve().
| typedef void(* BestSolvableCb)(Pool *pool, Queue *canditates) | 
| typedef int(* ArchCheckCb)(Pool *pool, Solvable *solvable1, Solvable *solvable2) | 
| typedef int(* VendorCheckCb)(Pool *pool, Solvable *solvable1, Solvable *solvable2) | 
| typedef void(* UpdateCandidateCb)(Pool *pool, Solvable *solvable, Queue *canditates) | 
Definition at line 1271 of file solver.c.
References _Solver::branches, _Solver::covenantq, _Solver::decisionmap, _Solver::decisionq, _Solver::decisionq_why, _Repo::end, _Pool::installed, _Solver::installed, _Solver::learnt_pool, _Solver::learnt_why, map_init(), _Solver::noupdate, _Solver::nrules, _Pool::nsolvables, _Solver::orphaned, _Solver::pool, _Solver::problems, queue_init(), queue_push(), _Solver::recommendations, _Solver::recommends_index, _Solver::recommendsmap, _Solver::ruleassertions, _Solver::rules, RULES_BLOCK, _Solver::ruletojob, sat_calloc(), sat_extend_resize(), _Repo::start, _Solver::suggestions, _Solver::suggestsmap, _Solver::trans, transaction_init(), and _Solver::weakruleq.
| void solver_free | ( | Solver * | solv | ) | 
Definition at line 1315 of file solver.c.
References _Solver::branches, _Solver::choicerules_ref, _Solver::cleandepsmap, _Solver::covenantq, _Solver::decisionmap, _Solver::decisionq, _Solver::decisionq_why, _Solver::droporphanedmap, _Solver::dupinvolvedmap, _Solver::dupmap, _Solver::fixmap, _Solver::job, _Solver::learnt_pool, _Solver::learnt_why, map_free(), _Solver::multiversionupdaters, _Solver::noobsoletes, _Solver::noupdate, _Solver::obsoletes, _Solver::obsoletes_data, _Solver::orphaned, _Solver::problems, queue_free(), _Solver::recommendations, _Solver::recommendsmap, _Solver::ruleassertions, _Solver::rules, _Solver::ruletojob, sat_free(), _Solver::solutions, _Solver::suggestions, _Solver::suggestsmap, _Solver::trans, transaction_free(), _Solver::updatemap, _Solver::watches, _Solver::weakrulemap, and _Solver::weakruleq.
Definition at line 2508 of file solver.c.
References _Solver::allowarchchange, _Solver::allowdowngrade, _Pool::allowselfconflicts, _Solver::allowuninstall, _Solver::allowvendorchange, _Solver::choicerules, _Solver::choicerules_end, _Solver::cleandepsmap, _Queue::count, _Rule::d, _Solver::decisionq, _Solver::distupgrade, _Solver::distupgrade_removeunsupported, _Solver::dontinstallrecommended, _Solver::dontshowinstalledrecommended, _Solver::dosplitprovides, _Solver::droporphanedmap, _Solver::droporphanedmap_all, _Solver::dupmap_all, _Solver::duprules, _Solver::duprules_end, _Queue::elements, _Repo::end, _Solver::featurerules, _Solver::featurerules_end, findrecommendedsuggested(), _Solver::fixmap, _Solver::fixmap_all, _Solver::fixsystem, FOR_JOB_SELECT, FOR_PROVIDES, FOR_REPO_SOLVABLES, IF_POOLDEBUG, _Solver::ignorealreadyrecommended, _Pool::implicitobsoleteusesprovides, _Solver::infarchrules, _Solver::infarchrules_end, _Solver::installed, _Solver::job, _Solver::jobrules, _Solver::jobrules_end, _Solver::learntrules, makeruledecisions(), makewatches(), map_free(), map_grow(), map_init(), MAPSET, MAPTST, _Solvable::name, _Repo::name, _Solver::noinfarchcheck, _Solver::noobsoletes, _Solver::noupdateprovide, _Pool::novirtualconflicts, _Solver::nrules, _Pool::nsolvables, _Pool::obsoleteusescolors, _Pool::obsoleteusesprovides, _Solver::orphaned, _Rule::p, policy_create_obsolete_index(), _Solver::pool, _Repo::pool, pool_createwhatprovides(), POOL_DEBUG, pool_installable(), pool_queuetowhatprovides(), _Solver::problems, _Pool::promoteepoch, queue_empty(), queue_free(), queue_init(), queue_init_clone(), queue_push(), queue_shift(), _Solvable::repo, _Solver::rpmrules_end, _Solver::ruleassertions, _Solver::rules, _Solver::ruletojob, SAT_DEBUG_JOB, SAT_DEBUG_SCHUBI, SAT_DEBUG_SOLVER, SAT_DEBUG_STATS, sat_timems(), _Map::size, _Pool::solvables, solver_addchoicerules(), solver_addduprules(), solver_addinfarchrules(), solver_addjobrule(), solver_addrpmrulesforsolvable(), solver_addrpmrulesforupdaters(), solver_addrpmrulesforweak(), solver_addrule(), solver_addupdaterule(), solver_calculate_noobsmap(), SOLVER_CLEANDEPS, solver_createdupmaps(), solver_disablepolicyrules(), solver_disablerule(), SOLVER_DISTUPGRADE, SOLVER_DROP_ORPHANED, SOLVER_ERASE, solver_freedupmaps(), SOLVER_INSTALL, SOLVER_JOBMASK, SOLVER_LOCK, SOLVER_NOOBSOLETES, solver_prepare_solutions(), solver_printrule(), solver_run_sat(), solver_samerule(), solver_select2str(), SOLVER_SELECTMASK, SOLVER_SOLVABLE, SOLVER_SOLVABLE_ALL, solver_unifyrules(), SOLVER_UPDATE, SOLVER_USERINSTALLED, SOLVER_VERIFY, SOLVER_WEAK, SOLVER_WEAKENDEPS, _Repo::start, _Solver::stats_learned, _Solver::stats_unsolvable, SYSTEMSOLVABLE, _Solver::trans, transaction_calculate(), _Solver::updatemap, _Solver::updatemap_all, _Solver::updaterules, _Solver::updaterules_end, _Solver::updatesystem, _Rule::w2, weaken_solvable_deps(), _Solver::weakrulemap, _Solver::weakruleq, and _Pool::whatprovides.
| void solver_run_sat | ( | Solver * | solv, | |
| int | disablerules, | |||
| int | doweak | |||
| ) | 
Definition at line 1367 of file solver.c.
References analyze_unsolvable(), _Solver::branches, _Solver::cleandepsmap, _Queue::count, _Rule::d, _Solver::decisionmap, _Solver::decisionq, _Solver::decisionq_why, _Repo::disabled, _Solver::droporphanedmap, _Solver::droporphanedmap_all, _Solver::dupmap_all, _Queue::elements, _Repo::end, _Solver::featurerules, FOR_PROVIDES, FOR_RULELITERALS, _Repo::idarraydata, IF_POOLDEBUG, _Solver::ignorealreadyrecommended, _Solver::installed, _Solver::jobrules, map_free(), map_init(), MAPSET, MAPTST, _Solver::multiversionupdaters, _Solvable::name, _Solver::noobsoletes, _Solver::noupdate, _Solver::nrules, _Pool::nsolvables, _Repo::nsolvables, _Solvable::obsoletes, _Solver::orphaned, _Rule::p, policy_filter_unwanted(), POLICY_MODE_CHOOSE, POLICY_MODE_RECOMMEND, _Solver::pool, _Repo::pool, POOL_DEBUG, pool_installable(), propagate(), _Solver::propagate_index, queue_empty(), queue_free(), queue_init(), queue_push(), queue_pushunique(), _Solver::recommendations, _Solvable::recommends, _Solvable::repo, revert(), _Solver::rules, SAT_DEBUG_POLICY, SAT_DEBUG_PROPAGATE, SAT_DEBUG_RESULT, SAT_DEBUG_RULE_CREATION, SAT_DEBUG_SCHUBI, SAT_DEBUG_SOLVER, SAT_DEBUG_STATS, selectandinstall(), setpropagatelearn(), _Map::size, _Solver::solution_callback, _Solver::solution_callback_data, _Pool::solvables, solver_is_supplementing(), solver_printdecisionq(), solver_printdecisions(), solver_printruleclass(), solvid2str(), _Repo::start, _Solver::stats_learned, _Solver::stats_unsolvable, _Solvable::supplements, _Solver::updatemap, _Solver::updatemap_all, _Solver::updaterules, _Rule::w2, and _Pool::whatprovidesdata.
Referenced by refine_suggestion(), and solver_solve().
| void solver_reset | ( | Solver * | solv | ) | 
Definition at line 831 of file solver.c.
References _Solver::branches, _Queue::count, _Solver::decisionmap, _Solver::decisionq, _Solver::decisionq_why, _Queue::elements, enabledisablelearntrules(), makeruledecisions(), _Solver::pool, _Repo::pool, POOL_DEBUG, _Solver::propagate_index, _Solver::recommendations, _Solver::recommends_index, and SAT_DEBUG_UNSOLVABLE.
Referenced by analyze_unsolvable(), and refine_suggestion().
Definition at line 77 of file solver.c.
References _Reldep::evr, _Reldep::flags, FOR_PROVIDES, GETRELDEP, _Solver::installed, ISRELDEP, _Reldep::name, _Solver::pool, _Repo::pool, REL_AND, REL_NAMESPACE, _Solvable::repo, _Pool::solvables, solver_dep_installed(), and SYSTEMSOLVABLE.
Referenced by dep_possible(), solver_dep_fulfilled(), and solver_dep_installed().
Definition at line 45 of file solver.c.
References _Solver::dosplitprovides, _Reldep::flags, FOR_PROVIDES, GETRELDEP, _Solver::installed, ISRELDEP, MAPTST, _Reldep::name, _Solvable::name, _Solver::pool, _Repo::pool, REL_WITH, _Solvable::repo, _Map::size, _Pool::solvables, _Repo::start, _Solver::updatemap, and _Solver::updatemap_all.
Referenced by dep_possible(), and solver_dep_fulfilled().
Definition at line 2470 of file solver.c.
References _Queue::count, _Queue::elements, FOR_JOB_SELECT, map_grow(), MAPSET, _Pool::nsolvables, _Map::size, SOLVER_JOBMASK, SOLVER_NOOBSOLETES, and SOLVER_SELECTMASK.
Referenced by solver_solve().
Definition at line 44 of file solverdebug.c.
Definition at line 310 of file solver.h.
References _Solver::decisionmap, _Reldep::evr, _Reldep::flags, FOR_PROVIDES, GETRELDEP, ISRELDEP, _Reldep::name, _Solver::pool, REL_AND, REL_NAMESPACE, solver_dep_installed(), and solver_splitprovides().
Referenced by solver_is_enhancing(), and solver_is_supplementing().
Definition at line 338 of file solver.h.
References _Repo::idarraydata, _Solvable::repo, solver_dep_fulfilled(), and _Solvable::supplements.
Referenced by findrecommendedsuggested(), prune_to_recommended(), selectandinstall(), and solver_run_sat().
Definition at line 351 of file solver.h.
References _Solvable::enhances, _Repo::idarraydata, _Solvable::repo, and solver_dep_fulfilled().
Referenced by findrecommendedsuggested(), and prune_to_recommended().
Definition at line 3043 of file solver.c.
References map_free(), _Solver::pool, pool_calc_duchanges(), and solver_create_state_maps().
| int solver_calc_installsizechange | ( | Solver * | solv | ) | 
Definition at line 3059 of file solver.c.
References map_free(), _Solver::pool, pool_calc_installsizechange(), and solver_create_state_maps().
Definition at line 3071 of file solver.c.
References map_free(), _Solver::noobsoletes, _Solver::pool, pool_trivial_installable_noobsoletesmap(), _Map::size, and solver_create_state_maps().
Referenced by solver_printtrivial().
| static void solver_create_state_maps | ( | Solver * | solv, | |
| Map * | installedmap, | |||
| Map * | conflictsmap | |||
| ) |  [inline, static] | 
Definition at line 370 of file solver.h.
References _Solver::decisionq, _Solver::pool, and pool_create_state_maps().
Referenced by solver_calc_duchanges(), solver_calc_installsizechange(), and solver_trivial_installable().
 1.5.6
 1.5.6