DependencySolver Class Referencefinal
Inheritance diagram for DependencySolver:
[legend]
Collaboration diagram for DependencySolver:
[legend]

## Public Member Functions

| DependencySolver (pkgCache &Cache, pkgDepCache::Policy &Policy, EDSP::Request::Flags requestFlags)
bool | FromDepCache (pkgDepCache &depcache)
| Apply the selections from the dep cache to the solver.
bool | ToDepCache (pkgDepCache &depcache) const
| Apply the solver result to the depCache.
Public Member Functions inherited from Solver
bool | Pop ()
void | UndoOne ()
bool | AddWork (Work &&work)
| Solver (pkgCache &Cache)
bool | Assume (Lit lit, const Clause *reason=nullptr)
bool | Enqueue (Lit lit, const Clause *reason=nullptr)
bool | Solve ()
virtual std::string | WhyStr (Var reason) const
virtual std::string | LongWhyStr (Var var, bool assignment, const Clause *rclause, std::string prefix, std::unordered_set< Var > &seen) const
| Print a long reason string.

## Static Public Member Functions

static APT_PUBLIC std::string | InternalCliWhy (pkgDepCache &depcache, pkgCache::PkgIterator Pkg, bool assignment)
| Temporary internal API with external linkage for the apt why and apt why-not commands.

## Friends

class | CompareProviders3

## Additional Inherited Members

Protected Types inherited from Solver
using | level_type = unsigned int
template<typename T>
using | heap = std::vector<T>
Protected Member Functions inherited from Solver
constexpr State & | operator[] (const pkgCache::Package *P) noexcept
constexpr const State & | operator[] (const pkgCache::Package *P) const noexcept
constexpr State & | operator[] (const pkgCache::Version *V) noexcept
constexpr const State & | operator[] (const pkgCache::Version *V) const noexcept
constexpr State & | operator[] (Var r) noexcept
constexpr const State & | operator[] (Var r) const noexcept
constexpr std::vector< const Clause * > & | watches (Lit lit) noexcept
bool | Propagate ()
bool | Propagate (const Clause *clause, Lit lit)
level_type | decisionLevel ()
constexpr Var | bestReason (Clause const *clause, Var var) const noexcept
constexpr LiftedBool | value (Lit lit) const noexcept
Protected Attributes inherited from Solver
pkgCache & | cache
std::unique_ptr< State > | rootState
ContiguousCacheMap< pkgCache::Package, State > | pkgStates
ContiguousCacheMap< pkgCache::Version, State > | verStates
heap< Work > | work
std::vector< Trail > | trail
| Trail of assignments done, and clauses solved.
std::vector< level_type > | trailLim {}
| Separator indices for different decision levels in trail.
std::queue< Var > | propQ
time_t | startTime {}
std::string | version {_config->Find("APT::Solver", "3.0")}
| Various configuration options.
int | debug {_config->FindI("Debug::APT::Solver")}
int | Timeout {_config->FindI("APT::Solver::Timeout", 10)}

## Constructor & Destructor Documentation

## DependencySolver()

DependencySolver | ( | pkgCache & | cache,
|  | pkgDepCache::Policy & | policy,
|  | EDSP::Request::Flags | requestFlags )

Todo
  DEDUP with pkgDepCache.

Referenced by InternalCliWhy().

The documentation for this class was generated from the following files:

- apt-pkg/solver3.h
- apt-pkg/solver3.cc