libzypp 17.31.23
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...
 
class  SolverQueueItemDelete
 
class  SolverQueueItemInstall
 
class  SolverQueueItemInstallOneOf
 
class  SolverQueueItemLock
 
class  SolverQueueItemUpdate
 
struct  UndoTransact
 

Typedefs

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

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 (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 &os, 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

typedef std::list<ItemCapKind> zypp::solver::detail::ItemCapKindList

Definition at line 42 of file Types.h.

◆ SolverQueueItemList

typedef std::list<SolverQueueItem_Ptr> zypp::solver::detail::SolverQueueItemList

Definition at line 45 of file Types.h.

◆ SolutionActionList

typedef std::list<SolutionAction_Ptr> zypp::solver::detail::SolutionActionList

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 186 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 170 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 176 of file SATResolver.cc.

◆ relaxedVendorCheck()

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

Definition at line 179 of file SATResolver.cc.

◆ itemToString()

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

Definition at line 228 of file SATResolver.cc.

◆ SATSolutionToPool()

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

Definition at line 335 of file SATResolver.cc.

◆ mapBuddy() [1/2]

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

Definition at line 1065 of file SATResolver.cc.

◆ mapBuddy() [2/2]

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

Definition at line 1075 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 &  os,
const SolutionActionList actionlist 
)

Definition at line 80 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 63 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 162 of file Resolver.cc.

◆ dupAllowDowngrade

_onlyRequires zypp::solver::detail::dupAllowDowngrade

Definition at line 167 of file Resolver.cc.

◆ dupAllowArchChange

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

Definition at line 169 of file Resolver.cc.