libzypp: zypp/solver/detail/Resolver.cc File Reference

libzypp 17.38.14

Resolver.cc File Reference
`#include <boost/static_assert.hpp>`
`#include <utility>`
`#include <zypp-core/base/LogTools.h>`
`#include <zypp/base/Algorithm.h>`
`#include <zypp/solver/detail/Resolver.h>`
`#include <zypp/solver/detail/Testcase.h>`
`#include <zypp/solver/detail/SATResolver.h>`
`#include <zypp/solver/detail/ItemCapKind.h>`
`#include <zypp/solver/detail/SolutionAction.h>`
`#include <zypp/solver/detail/SolverQueueItem.h>`
`#include <zypp/ZConfig.h>`
`#include <zypp/sat/Transaction.h>`

Go to the source code of this file.

## Classes
struct | zypp::solver::detail::UndoTransact
struct | zypp::solver::detail::DoTransact
struct | zypp::solver::detail::ScopedAutoTestCaseWriter
| Write automatic testcases if ZYPP_FULLLOG=1 is set. More...

## Namespaces
namespace | zypp
| Easy-to use interface to the ZYPP dependency resolver.
namespace | zypp::solver
namespace | zypp::solver::detail

## Macros
#define | ZYPP_USE_RESOLVER_INTERNALS
#define | MAXSOLVERRUNS 5
#define | ZYPP_BASE_LOGGER_LOGGROUP "zypp::solver"
#define | OUTS(t)
#define | ZOLV_FLAG_DEFAULT(ZSETTER, ZGETTER)
#define | ZOLV_FLAG_TRIBOOL(ZSETTER, ZGETTER, ZVARDEFAULT, ZVARNAME)
#define | ZOLV_FLAG_SATSOLV(ZSETTER, ZGETTER, ZVARDEFAULT, ZVARNAME)

## Functions
| zypp::solver::detail::ZOLV_FLAG_SATSOLV (setCleandepsOnRemove, cleandepsOnRemove, ZConfig::instance().solver_cleandepsOnRemove(), _cleandepsOnRemove) ZOLV_FLAG_SATSOLV(setNoUpdateProvide
_noUpdateProvide | zypp::solver::detail::ZOLV_FLAG_SATSOLV (setOnlyRequires, onlyRequires, ZConfig::instance().solver_onlyRequires(), _onlyRequires) ZOLV_FLAG_SATSOLV(setAllowVendorChange
_noUpdateProvide _allowvendorchange | zypp::solver::detail::ZOLV_FLAG_SATSOLV (dupSetAllowDowngrade, dupAllowDowngrade, ZConfig::instance().solver_dupAllowDowngrade(), _dup_allowdowngrade) ZOLV_FLAG_SATSOLV(dupSetAllowNameChange
_noUpdateProvide _allowvendorchange _dup_allownamechange | zypp::solver::detail::ZOLV_FLAG_SATSOLV (dupSetAllowArchChange, dupAllowArchChange, ZConfig::instance().solver_dupAllowArchChange(), _dup_allowarchchange) ZOLV_FLAG_SATSOLV(dupSetAllowVendorChange

## Variables
| zypp::solver::detail::noUpdateProvide
_noUpdateProvide | zypp::solver::detail::allowVendorChange
_noUpdateProvide _allowvendorchange | zypp::solver::detail::dupAllowNameChange
_noUpdateProvide _allowvendorchange _dup_allownamechange | zypp::solver::detail::dupAllowVendorChange

## Macro Definition Documentation

## ◆ ZYPP_USE_RESOLVER_INTERNALS

#define ZYPP_USE_RESOLVER_INTERNALS

Definition at line 24 of file Resolver.cc.

## ◆ MAXSOLVERRUNS

#define MAXSOLVERRUNS 5

Definition at line 39 of file Resolver.cc.

## ◆ ZYPP_BASE_LOGGER_LOGGROUP

#define ZYPP_BASE_LOGGER_LOGGROUP "zypp::solver"

Definition at line 45 of file Resolver.cc.

## ◆ OUTS

#define OUTS | ( |  | t | ) |

Value:
os << " " << #t << ":\t" << t << endl;

## ◆ ZOLV_FLAG_DEFAULT

#define ZOLV_FLAG_DEFAULT | ( |  | ZSETTER,
|  |  | ZGETTER )

Value:
if ( all_r || _applyDefault_##ZGETTER ) ZSETTER( indeterminate )

## ◆ ZOLV_FLAG_TRIBOOL

#define ZOLV_FLAG_TRIBOOL | ( |  | ZSETTER,
|  |  | ZGETTER,
|  |  | ZVARDEFAULT,
|  |  | ZVARNAME )

Value:
void Resolver::ZSETTER( TriBool state_r ) \
{ _applyDefault_##ZGETTER = indeterminate(state_r); \
bool newval = _applyDefault_##ZGETTER ? ZVARDEFAULT : bool(state_r); \
if ( ZVARNAME != newval ) { \
DBG << #ZGETTER << ": changed from " << (bool)ZVARNAME << " to " << newval << " | " << (_applyDefault_##ZGETTER ? "changed default" : "explicitly set" ) << endl;\
ZVARNAME = newval; \
} \
} \
bool Resolver::ZGETTER() const \
{ return ZVARNAME; } \
DBG
#define DBG
Definition Logger.h:102
TriBool
bool

Definition at line 151 of file Resolver.cc.

## ◆ ZOLV_FLAG_SATSOLV

#define ZOLV_FLAG_SATSOLV | ( |  | ZSETTER,
|  |  | ZGETTER,
|  |  | ZVARDEFAULT,
|  |  | ZVARNAME )

Value:
ZOLV_FLAG_TRIBOOL( ZSETTER, ZGETTER, ZVARDEFAULT, _satResolver->ZVARNAME )
ZOLV_FLAG_TRIBOOL
#define ZOLV_FLAG_TRIBOOL(ZSETTER, ZDEFAULT, ZGETTER)
Definition Resolver.cc:131

Definition at line 165 of file Resolver.cc.