libzypp 17.37.17
zypp::solver::detail Namespace Reference

Classes

class  CheckIfUpdate
struct  DoTransact
struct  FindPackage
class  HelixControl
 Creates a file in helix format which contains all controll action of a testcase ( file is known as *-test.xml) More...
class  HelixResolvable
 Creates a file in helix format which includes all available or installed packages,patches,selections.... More...
class  SATCollectTransact
 Commit helper functor distributing PoolItem by status into lists. More...
struct  ScopedAutoTestCaseWriter
 Write automatic testcases if ZYPP_FULLLOG=1 is set. More...
class  SolverQueueItemDelete
class  SolverQueueItemInstall
class  SolverQueueItemInstallOneOf
class  SolverQueueItemLock
class  SolverQueueItemUpdate
struct  UndoTransact

Typedefs

typedef std::map< Repository, HelixResolvable_Ptr > RepositoryTable
using ResolverInternal = Resolver
 Preferred name in API.
using ItemCapKindList = std::list<ItemCapKind>
using SolverQueueItemList = std::list<SolverQueueItem_Ptr>
using SolutionActionList = std::list<SolutionAction_Ptr>

Functions

void establish (sat::Queue &pseudoItems_r, sat::Queue &pseudoFlags_r)
 ResPool helper to compute the initial status of Patches etc.
 ZOLV_FLAG_SATSOLV (setCleandepsOnRemove, cleandepsOnRemove, ZConfig::instance().solver_cleandepsOnRemove(), _cleandepsOnRemove) ZOLV_FLAG_SATSOLV(setOnlyRequires
_onlyRequires ZOLV_FLAG_SATSOLV (setAllowVendorChange, allowVendorChange, ZConfig::instance().solver_allowVendorChange(), _allowvendorchange) ZOLV_FLAG_SATSOLV(dupSetAllowDowngrade
_onlyRequires _dup_allowdowngrade ZOLV_FLAG_SATSOLV (dupSetAllowNameChange, dupAllowNameChange, ZConfig::instance().solver_dupAllowNameChange(), _dup_allownamechange) ZOLV_FLAG_SATSOLV(dupSetAllowArchChange
_onlyRequires _dup_allowdowngrade _dup_allowarchchange ZOLV_FLAG_SATSOLV (dupSetAllowVendorChange, dupAllowVendorChange, ZConfig::instance().solver_dupAllowVendorChange(), _dup_allowvendorchange) ResPool Resolver
 IMPL_PTR_TYPE (SATResolver)
int vendorCheck (sat::detail::CPool *pool, Solvable *solvable1, Solvable *solvable2)
int relaxedVendorCheck (sat::detail::CPool *pool, Solvable *solvable1, Solvable *solvable2)
std::string itemToString (const PoolItem &item)
static void SATSolutionToPool (const PoolItem &item, const ResStatus &status, const ResStatus::TransactByValue causer)
sat::Solvable mapBuddy (const PoolItem &item_r)
sat::Solvable mapBuddy (sat::Solvable item_r)
 IMPL_PTR_TYPE (SolutionAction)
std::ostream & operator<< (std::ostream &str, const SolutionActionList &actionlist)
 IMPL_PTR_TYPE (SolverQueueItem)
std::ostream & operator<< (std::ostream &os, const SolverQueueItemList &itemlist)
 IMPL_PTR_TYPE (SolverQueueItemDelete)
 IMPL_PTR_TYPE (SolverQueueItemInstall)
 IMPL_PTR_TYPE (SolverQueueItemInstallOneOf)
 IMPL_PTR_TYPE (SolverQueueItemLock)
 IMPL_PTR_TYPE (SolverQueueItemUpdate)
std::string xml_escape (const std::string &text)
std::string xml_tag_enclose (const std::string &text, const std::string &tag, bool escape=false)
template<class T>
std::string helixXML (const T &obj)
template<>
std::string helixXML (const Edition &edition)
template<>
std::string helixXML (const Arch &arch)
template<>
std::string helixXML (const Capability &cap)
template<>
std::string helixXML (const Capabilities &caps)
template<>
std::string helixXML (const CapabilitySet &caps)
std::string helixXML (const PoolItem &obj, Dep deptag_r)
std::string helixXML (const PoolItem &item)
 DEFINE_PTR_TYPE (HelixResolvable)
 IMPL_PTR_TYPE (HelixResolvable)
 DEFINE_PTR_TYPE (SolverQueueItem)
 DEFINE_PTR_TYPE (SolutionAction)

Variables

 onlyRequires
_onlyRequires dupAllowDowngrade
_onlyRequires _dup_allowdowngrade dupAllowArchChange

Typedef Documentation

◆ RepositoryTable

typedef std::map<Repository, HelixResolvable_Ptr> zypp::solver::detail::RepositoryTable

Definition at line 249 of file Testcase_helix.cc.

◆ ResolverInternal

Preferred name in API.

Definition at line 39 of file Types.h.

◆ ItemCapKindList

using zypp::solver::detail::ItemCapKindList = std::list<ItemCapKind>

Definition at line 42 of file Types.h.

◆ SolverQueueItemList

using zypp::solver::detail::SolverQueueItemList = std::list<SolverQueueItem_Ptr>

Definition at line 45 of file Types.h.

◆ SolutionActionList

using zypp::solver::detail::SolutionActionList = std::list<SolutionAction_Ptr>

Definition at line 48 of file Types.h.

Function Documentation

◆ establish()

void zypp::solver::detail::establish ( sat::Queue & pseudoItems_r,
sat::Queue & pseudoFlags_r )

ResPool helper to compute the initial status of Patches etc.

An empty solver run (no jobs) just to compute the initial status of pseudo installed items (patches).

Definition at line 188 of file SATResolver.cc.

◆ ZOLV_FLAG_SATSOLV() [1/4]

zypp::solver::detail::ZOLV_FLAG_SATSOLV ( setCleandepsOnRemove ,
cleandepsOnRemove ,
ZConfig::instance().solver_cleandepsOnRemove() ,
_cleandepsOnRemove  )

◆ ZOLV_FLAG_SATSOLV() [2/4]

_onlyRequires zypp::solver::detail::ZOLV_FLAG_SATSOLV ( setAllowVendorChange ,
allowVendorChange ,
ZConfig::instance().solver_allowVendorChange() ,
_allowvendorchange  )

◆ ZOLV_FLAG_SATSOLV() [3/4]

_onlyRequires _dup_allowdowngrade zypp::solver::detail::ZOLV_FLAG_SATSOLV ( dupSetAllowNameChange ,
dupAllowNameChange ,
ZConfig::instance().solver_dupAllowNameChange() ,
_dup_allownamechange  )

◆ ZOLV_FLAG_SATSOLV() [4/4]

_onlyRequires _dup_allowdowngrade _dup_allowarchchange zypp::solver::detail::ZOLV_FLAG_SATSOLV ( dupSetAllowVendorChange ,
dupAllowVendorChange ,
ZConfig::instance().solver_dupAllowVendorChange() ,
_dup_allowvendorchange  )

Definition at line 177 of file Resolver.cc.

◆ IMPL_PTR_TYPE() [1/9]

zypp::solver::detail::IMPL_PTR_TYPE ( SATResolver )

◆ vendorCheck()

int zypp::solver::detail::vendorCheck ( sat::detail::CPool * pool,
Solvable * solvable1,
Solvable * solvable2 )

Definition at line 178 of file SATResolver.cc.

◆ relaxedVendorCheck()

int zypp::solver::detail::relaxedVendorCheck ( sat::detail::CPool * pool,
Solvable * solvable1,
Solvable * solvable2 )

Definition at line 181 of file SATResolver.cc.

◆ itemToString()

std::string zypp::solver::detail::itemToString ( const PoolItem & item)
inline

Definition at line 230 of file SATResolver.cc.

◆ SATSolutionToPool()

void zypp::solver::detail::SATSolutionToPool ( const PoolItem & item,
const ResStatus & status,
const ResStatus::TransactByValue causer )
static

Definition at line 338 of file SATResolver.cc.

◆ mapBuddy() [1/2]

sat::Solvable zypp::solver::detail::mapBuddy ( const PoolItem & item_r)
inline

Definition at line 1081 of file SATResolver.cc.

◆ mapBuddy() [2/2]

sat::Solvable zypp::solver::detail::mapBuddy ( sat::Solvable item_r)
inline

Definition at line 1091 of file SATResolver.cc.

◆ IMPL_PTR_TYPE() [2/9]

zypp::solver::detail::IMPL_PTR_TYPE ( SolutionAction )

◆ operator<<() [1/2]

std::ostream & zypp::solver::detail::operator<< ( std::ostream & str,
const SolutionActionList & actionlist )

Definition at line 58 of file SolutionAction.cc.

◆ IMPL_PTR_TYPE() [3/9]

zypp::solver::detail::IMPL_PTR_TYPE ( SolverQueueItem )

◆ operator<<() [2/2]

std::ostream & zypp::solver::detail::operator<< ( std::ostream & os,
const SolverQueueItemList & itemlist )

Definition at line 65 of file SolverQueueItem.cc.

◆ IMPL_PTR_TYPE() [4/9]

zypp::solver::detail::IMPL_PTR_TYPE ( SolverQueueItemDelete )

◆ IMPL_PTR_TYPE() [5/9]

zypp::solver::detail::IMPL_PTR_TYPE ( SolverQueueItemInstall )

◆ IMPL_PTR_TYPE() [6/9]

zypp::solver::detail::IMPL_PTR_TYPE ( SolverQueueItemInstallOneOf )

◆ IMPL_PTR_TYPE() [7/9]

zypp::solver::detail::IMPL_PTR_TYPE ( SolverQueueItemLock )

◆ IMPL_PTR_TYPE() [8/9]

zypp::solver::detail::IMPL_PTR_TYPE ( SolverQueueItemUpdate )

◆ xml_escape()

std::string zypp::solver::detail::xml_escape ( const std::string & text)
inline

Definition at line 59 of file Testcase_helix.cc.

◆ xml_tag_enclose()

std::string zypp::solver::detail::xml_tag_enclose ( const std::string & text,
const std::string & tag,
bool escape = false )
inline

Definition at line 64 of file Testcase_helix.cc.

◆ helixXML() [1/8]

template<class T>
std::string zypp::solver::detail::helixXML ( const T & obj)

◆ helixXML() [2/8]

template<>
std::string zypp::solver::detail::helixXML ( const Edition & edition)

Definition at line 82 of file Testcase_helix.cc.

◆ helixXML() [3/8]

template<>
std::string zypp::solver::detail::helixXML ( const Arch & arch)

Definition at line 94 of file Testcase_helix.cc.

◆ helixXML() [4/8]

template<>
std::string zypp::solver::detail::helixXML ( const Capability & cap)

Definition at line 102 of file Testcase_helix.cc.

◆ helixXML() [5/8]

template<>
std::string zypp::solver::detail::helixXML ( const Capabilities & caps)

Definition at line 156 of file Testcase_helix.cc.

◆ helixXML() [6/8]

template<>
std::string zypp::solver::detail::helixXML ( const CapabilitySet & caps)

Definition at line 170 of file Testcase_helix.cc.

◆ helixXML() [7/8]

std::string zypp::solver::detail::helixXML ( const PoolItem & obj,
Dep deptag_r )
inline

Definition at line 183 of file Testcase_helix.cc.

◆ helixXML() [8/8]

std::string zypp::solver::detail::helixXML ( const PoolItem & item)

Definition at line 192 of file Testcase_helix.cc.

◆ DEFINE_PTR_TYPE() [1/3]

zypp::solver::detail::DEFINE_PTR_TYPE ( HelixResolvable )

◆ IMPL_PTR_TYPE() [9/9]

zypp::solver::detail::IMPL_PTR_TYPE ( HelixResolvable )

◆ DEFINE_PTR_TYPE() [2/3]

zypp::solver::detail::DEFINE_PTR_TYPE ( SolverQueueItem )

◆ DEFINE_PTR_TYPE() [3/3]

zypp::solver::detail::DEFINE_PTR_TYPE ( SolutionAction )

Variable Documentation

◆ onlyRequires

zypp::solver::detail::onlyRequires

Definition at line 169 of file Resolver.cc.

◆ dupAllowDowngrade

_onlyRequires zypp::solver::detail::dupAllowDowngrade

Definition at line 174 of file Resolver.cc.

◆ dupAllowArchChange

_onlyRequires _dup_allowdowngrade zypp::solver::detail::dupAllowArchChange

Definition at line 176 of file Resolver.cc.