libzypp  11.13.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.

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

Definition at line 241 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 54 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 59 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 77 of file Testcase.cc.

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

Definition at line 89 of file Testcase.cc.

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

Definition at line 97 of file Testcase.cc.

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

Definition at line 147 of file Testcase.cc.

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

Definition at line 161 of file Testcase.cc.

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

Definition at line 174 of file Testcase.cc.

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

Definition at line 183 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  )