libzypp  12.16.5
zypp::solver::detail Namespace Reference

Classes

class  LookFor
 
class  LookForUpdate
 
class  LookForReinstall
 
class  CheckIfBest
 
class  Helper
 
class  InstallOrder
 compute Installation order. More...
 
class  ProblemSolutionCombi
 Class representing one possible solution to one problem found during resolving This problem solution is a combination of different actions. More...
 
class  ProblemSolutionIgnore
 Class representing one possible solution to one problem found during resolving This problem solution ignores one or more items by setting his dependencies to weak. More...
 
struct  UndoTransact
 
struct  DoTransact
 
struct  ItemCapKind
 
class  Resolver
 A mid layer class we should remove. More...
 
struct  SATCollectTransact
 
class  CheckIfUpdate
 
class  CollectPseudoInstalled
 
struct  FindPackage
 
class  SATResolver
 
class  SolutionAction
 Abstract base class for one action of a problem solution. More...
 
class  TransactionSolutionAction
 
class  InjectSolutionAction
 A problem solution action that injects an artificial "provides" to the pool to satisfy open requirements or remove the conflict of concerning resolvable. More...
 
class  SolverQueueItem
 
class  SolverQueueItemDelete
 
class  SolverQueueItemInstall
 
class  SolverQueueItemInstallOneOf
 
class  SolverQueueItemLock
 
class  SolverQueueItemUpdate
 
class  HelixResolvable
 Creates a file in helix format which includes all available or installed packages,patches,selections.... More...
 
class  HelixControl
 Creates a file in helix format which contains all controll action of a testcase ( file is known as *-test.xml) More...
 
class  Testcase
 Generating a testcase of the current pool and solver state. More...
 

Typedefs

typedef std::multimap
< PoolItem, ItemCapKind
ItemCapKindMap
 
typedef std::list< ItemCapKindItemCapKindList
 
typedef std::list
< SolverQueueItem_Ptr > 
SolverQueueItemList
 
typedef std::map< Repository,
HelixResolvable_Ptr > 
RepositoryTable
 
typedef std::list< PoolItemPoolItemList
 
typedef std::set< PoolItemPoolItemSet
 
typedef std::list
< SolutionAction_Ptr > 
SolutionActionList
 
typedef std::list
< SolutionAction_constPtr > 
CSolutionActionList
 

Enumerations

enum  TransactionKind {
  KEEP, INSTALL, REMOVE, UNLOCK,
  LOCK, REMOVE_EXTRA_REQUIRE, REMOVE_EXTRA_CONFLICT, ADD_SOLVE_QUEUE_ITEM,
  REMOVE_SOLVE_QUEUE_ITEM
}
 A problem solution action that performs a transaction (installs, removes, keep ...) one resolvable (package, patch, pattern, product). More...
 
enum  InjectSolutionKind { WEAK }
 Type of ignoring; currently only WEAK. More...
 
enum  SolverQueueItemType {
  QUEUE_ITEM_TYPE_UNKNOWN = 0, QUEUE_ITEM_TYPE_UPDATE, QUEUE_ITEM_TYPE_INSTALL, QUEUE_ITEM_TYPE_DELETE,
  QUEUE_ITEM_TYPE_INSTALL_ONE_OF, QUEUE_ITEM_TYPE_LOCK
}
 

Functions

ostream & operator<< (ostream &os, const PoolItemList &itemlist)
 
template<class _Iter >
static PoolItem findInstalledByNameAndKind (_Iter begin, _Iter end, const string &name, const Resolvable::Kind &kind)
 
template<class _Iter >
static PoolItem findUpdateItem (_Iter begin, _Iter end, PoolItem item)
 
 IMPL_PTR_TYPE (ProblemSolutionCombi)
 
 IMPL_PTR_TYPE (ProblemSolutionIgnore)
 
 IMPL_PTR_TYPE (Resolver)
 
 IMPL_PTR_TYPE (SATResolver)
 
int vendorCheck (Pool *pool, Solvable *solvable1, Solvable *solvable2)
 
std::string itemToString (const PoolItem &item)
 
PoolItem getPoolItem (Id id_r)
 
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)
 
 IMPL_PTR_TYPE (TransactionSolutionAction)
 
 IMPL_PTR_TYPE (InjectSolutionAction)
 
ostream & operator<< (ostream &os, const SolutionActionList &actionlist)
 
ostream & operator<< (ostream &os, const CSolutionActionList &actionlist)
 
 IMPL_PTR_TYPE (SolverQueueItem)
 
ostream & operator<< (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)
 
string helixXML (const Resolvable::constPtr &obj, Dep deptag_r)
 
std::string helixXML (const PoolItem &item)
 
 DEFINE_PTR_TYPE (HelixResolvable)
 
 IMPL_PTR_TYPE (HelixResolvable)
 
 DEFINE_PTR_TYPE (Resolver)
 
 DEFINE_PTR_TYPE (SolutionAction)
 
 DEFINE_PTR_TYPE (TransactionSolutionAction)
 
 DEFINE_PTR_TYPE (InjectSolutionAction)
 
 DEFINE_PTR_TYPE (SolverQueueItem)
 
 DEFINE_PTR_TYPE (SolverQueueItemUpdate)
 
 DEFINE_PTR_TYPE (SolverQueueItemDelete)
 
 DEFINE_PTR_TYPE (SolverQueueItemInstall)
 
 DEFINE_PTR_TYPE (SolverQueueItemInstallOneOf)
 
 DEFINE_PTR_TYPE (SolverQueueItemLock)
 

Typedef Documentation

Definition at line 87 of file Resolver.h.

Definition at line 88 of file Resolver.h.

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

Definition at line 59 of file SolverQueueItem.h.

Definition at line 242 of file Testcase.cc.

Definition at line 51 of file Types.h.

Definition at line 52 of file Types.h.

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

Definition at line 57 of file Types.h.

typedef std::list<SolutionAction_constPtr> zypp::solver::detail::CSolutionActionList

Definition at line 58 of file Types.h.

Enumeration Type Documentation

A problem solution action that performs a transaction (installs, removes, keep ...) one resolvable (package, patch, pattern, product).

Enumerator:
KEEP 
INSTALL 
REMOVE 
UNLOCK 
LOCK 
REMOVE_EXTRA_REQUIRE 
REMOVE_EXTRA_CONFLICT 
ADD_SOLVE_QUEUE_ITEM 
REMOVE_SOLVE_QUEUE_ITEM 

Definition at line 66 of file SolutionAction.h.

Type of ignoring; currently only WEAK.

Enumerator:
WEAK 

Definition at line 131 of file SolutionAction.h.

Enumerator:
QUEUE_ITEM_TYPE_UNKNOWN 
QUEUE_ITEM_TYPE_UPDATE 
QUEUE_ITEM_TYPE_INSTALL 
QUEUE_ITEM_TYPE_DELETE 
QUEUE_ITEM_TYPE_INSTALL_ONE_OF 
QUEUE_ITEM_TYPE_LOCK 

Definition at line 49 of file SolverQueueItem.h.

Function Documentation

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

Definition at line 49 of file Helper.cc.

template<class _Iter >
static PoolItem zypp::solver::detail::findInstalledByNameAndKind ( _Iter  begin,
_Iter  end,
const string &  name,
const Resolvable::Kind &  kind 
)
static

Definition at line 76 of file Helper.cc.

template<class _Iter >
static PoolItem zypp::solver::detail::findUpdateItem ( _Iter  begin,
_Iter  end,
PoolItem  item 
)
static

Definition at line 160 of file Helper.cc.

zypp::solver::detail::IMPL_PTR_TYPE ( ProblemSolutionCombi  )
zypp::solver::detail::IMPL_PTR_TYPE ( ProblemSolutionIgnore  )
zypp::solver::detail::IMPL_PTR_TYPE ( Resolver  )
zypp::solver::detail::IMPL_PTR_TYPE ( SATResolver  )
int zypp::solver::detail::vendorCheck ( Pool *  pool,
Solvable *  solvable1,
Solvable *  solvable2 
)

Definition at line 77 of file SATResolver.cc.

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

Definition at line 84 of file SATResolver.cc.

PoolItem zypp::solver::detail::getPoolItem ( Id  id_r)
inline

Definition at line 100 of file SATResolver.cc.

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

Definition at line 274 of file SATResolver.cc.

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

Definition at line 972 of file SATResolver.cc.

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

Definition at line 982 of file SATResolver.cc.

zypp::solver::detail::IMPL_PTR_TYPE ( SolutionAction  )
zypp::solver::detail::IMPL_PTR_TYPE ( TransactionSolutionAction  )
zypp::solver::detail::IMPL_PTR_TYPE ( InjectSolutionAction  )
ostream& zypp::solver::detail::operator<< ( ostream &  os,
const SolutionActionList &  actionlist 
)

Definition at line 81 of file SolutionAction.cc.

ostream& zypp::solver::detail::operator<< ( ostream &  os,
const CSolutionActionList &  actionlist 
)

Definition at line 92 of file SolutionAction.cc.

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

Definition at line 61 of file SolverQueueItem.cc.

zypp::solver::detail::IMPL_PTR_TYPE ( SolverQueueItemDelete  )
zypp::solver::detail::IMPL_PTR_TYPE ( SolverQueueItemInstall  )
zypp::solver::detail::IMPL_PTR_TYPE ( SolverQueueItemInstallOneOf  )
zypp::solver::detail::IMPL_PTR_TYPE ( SolverQueueItemLock  )
zypp::solver::detail::IMPL_PTR_TYPE ( SolverQueueItemUpdate  )
std::string zypp::solver::detail::xml_escape ( const std::string &  text)
inline

Definition at line 55 of file Testcase.cc.

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

Definition at line 60 of file Testcase.cc.

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

Definition at line 78 of file Testcase.cc.

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

Definition at line 90 of file Testcase.cc.

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

Definition at line 98 of file Testcase.cc.

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

Definition at line 148 of file Testcase.cc.

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

Definition at line 162 of file Testcase.cc.

string zypp::solver::detail::helixXML ( const Resolvable::constPtr &  obj,
Dep  deptag_r 
)
inline

Definition at line 175 of file Testcase.cc.

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

Definition at line 184 of file Testcase.cc.

zypp::solver::detail::DEFINE_PTR_TYPE ( HelixResolvable  )
zypp::solver::detail::IMPL_PTR_TYPE ( HelixResolvable  )
zypp::solver::detail::DEFINE_PTR_TYPE ( Resolver  )
zypp::solver::detail::DEFINE_PTR_TYPE ( SolutionAction  )
zypp::solver::detail::DEFINE_PTR_TYPE ( TransactionSolutionAction  )
zypp::solver::detail::DEFINE_PTR_TYPE ( InjectSolutionAction  )
zypp::solver::detail::DEFINE_PTR_TYPE ( SolverQueueItem  )
zypp::solver::detail::DEFINE_PTR_TYPE ( SolverQueueItemUpdate  )
zypp::solver::detail::DEFINE_PTR_TYPE ( SolverQueueItemDelete  )
zypp::solver::detail::DEFINE_PTR_TYPE ( SolverQueueItemInstall  )
zypp::solver::detail::DEFINE_PTR_TYPE ( SolverQueueItemInstallOneOf  )
zypp::solver::detail::DEFINE_PTR_TYPE ( SolverQueueItemLock  )