libzypp  11.13.5
zypp::Resolvable Class Reference

Interface base for resolvable objects (identification and dependencies). More...

#include <Resolvable.h>

Inheritance diagram for zypp::Resolvable:

List of all members.

Public Types

typedef Resolvable Self
typedef ResTraits< SelfTraitsType
typedef TraitsType::KindType Kind
typedef TraitsType::PtrType Ptr
typedef TraitsType::constPtrType constPtr

Public Member Functions

bool isSystem () const
 Whether this represents an installed solvable.
bool onSystemByUser () const
 Whether this is known to be installed on behalf of a user request.
IdString ident () const
 The identifier.
ResKind kind () const
bool isKind (const ResKind &kind_r) const
 Test whether a Solvable is of a certain ResKind.
template<class _Res >
bool isKind () const
std::string name () const
Edition edition () const
Arch arch () const
bool multiversionInstall () const
 Whether different versions of this package can be installed at the same time.
const sat::SolvablesatSolvable () const
 Access the corresponding ::Solvable.
PoolItem poolItem () const
 Access the corresponding PoolItem.
Dependencies.
Capabilities dep (Dep which_r) const
 Select by Dep.
Capabilities operator[] (Dep which_r) const
Capabilities provides () const
Capabilities requires () const
Capabilities conflicts () const
Capabilities obsoletes () const
Capabilities recommends () const
Capabilities suggests () const
Capabilities enhances () const
Capabilities supplements () const
Capabilities prerequires () const
CapabilitySet providesNamespace (const std::string &namespace_r) const
 Return the namespaced provides 'namespace([value])[ op edition]' of this Solvable.
CapabilitySet valuesOfNamespace (const std::string &namespace_r) const
 Return 'value[ op edition]' for namespaced provides 'namespace(value)[ op edition]'.
- Public Member Functions inherited from zypp::base::ReferenceCounted
 ReferenceCounted ()
 Default ctor.
 ReferenceCounted (const ReferenceCounted &rhs)
 Copy ctor.
virtual ~ReferenceCounted ()
 Dtor.
ReferenceCountedoperator= (const ReferenceCounted &)
 Assignment.
unsigned refCount () const
 Return reference counter value.
void ref () const
 Add a reference.
void unref () const
 Release a reference.

Protected Member Functions

 Resolvable (const sat::Solvable &solvable_r)
 Ctor.
virtual ~Resolvable ()
 Dtor.
virtual std::ostream & dumpOn (std::ostream &str) const
 Helper for stream output.
- Protected Member Functions inherited from zypp::sat::Solvable
 Solvable ()
 Default ctor creates noSolvable.
 Solvable (IdType id_r)
 PoolImpl ctor.
Repository repository () const
 The Repository this Solvable belongs to.
template<class _Iterator >
bool isKind (_Iterator begin, _Iterator end)
IdString vendor () const
std::string asString () const
 String representation "ident-edition.arch" or "noSolvable".
bool identical (Solvable rhs) const
 Test whether two Solvables have the same content.
bool sameNVRA (Solvable rhs) const
 Test for same name-version-release.arch.
Solvable nextInPool () const
 Return next Solvable in Pool (or noSolvable).
Solvable nextInRepo () const
 Return next Solvable in Repo (or noSolvable).
::_Solvable * get () const
 Expert backdoor.
IdType id () const
 Expert backdoor.
std::string lookupStrAttribute (const SolvAttr &attr) const
 returns the string attribute value for attr or an empty string if it does not exists.
std::string lookupStrAttribute (const SolvAttr &attr, const Locale &lang_r) const
unsigned long long lookupNumAttribute (const SolvAttr &attr) const
 returns the numeric attribute value for attr or 0 if it does not exists.
bool lookupBoolAttribute (const SolvAttr &attr) const
 returns the boolean attribute value for attr or false if it does not exists.
detail::IdType lookupIdAttribute (const SolvAttr &attr) const
 returns the id attribute value for attr or detail::noId if it does not exists.
CheckSum lookupCheckSumAttribute (const SolvAttr &attr) const
 returns the CheckSum attribute value for attr or an empty CheckSum if ir does not exist.
OnMediaLocation lookupLocation () const
 returns OnMediaLocation data: This is everything we need to download e.g.
bool supportsLocales () const
 Whether this Solvable claims to support locales.
bool supportsLocale (const Locale &locale_r) const
 Whether this Solvable supports a specific Locale.
bool supportsLocale (const LocaleSet &locales_r) const
 Whether this Solvable supports at least one of the specified locales.
bool supportsRequestedLocales () const
 Whether this Solvable supports at least one requested locale.
void getSupportedLocales (LocaleSet &locales_r) const
 Return the supported locales via locales_r.
LocaleSet getSupportedLocales () const
- Protected Member Functions inherited from zypp::base::ReferenceCounted
virtual void ref_to (unsigned) const
 Trigger derived classes after refCount was increased.
virtual void unref_to (unsigned) const
 Trigger derived classes after refCount was decreased.

Friends

std::ostream & operator<< (std::ostream &str, const Resolvable &obj)

Related Functions

(Note that these are not member functions.)

std::ostream & operator<< (std::ostream &str, const Resolvable &obj)
std::ostream & dumpOn (std::ostream &str, const Resolvable &obj)
template<class _Res >
bool isKind (const Resolvable::constPtr &p)
 Test whether a Resolvable::Ptr is of a certain Kind.
template<class _Res >
ResTraits< _Res >::PtrType asKind (const Resolvable::Ptr &p)
 Convert Resolvable::Ptr into Ptr of a certain Kind.
int compareByN (const Resolvable::constPtr &lhs, const Resolvable::constPtr &rhs)
int compareByNVR (const Resolvable::constPtr &lhs, const Resolvable::constPtr &rhs)
int compareByNVRA (const Resolvable::constPtr &lhs, const Resolvable::constPtr &rhs)
bool isKind (const sat::Solvable &solvable_r)

Additional Inherited Members

- Static Public Member Functions inherited from zypp::base::ReferenceCounted
static void add_ref (const ReferenceCounted *ptr_r)
 Called by zypp::intrusive_ptr to add a reference.
static void release (const ReferenceCounted *ptr_r)
 Called by zypp::intrusive_ptr to add a reference.
- Protected Types inherited from zypp::sat::Solvable
typedef sat::detail::SolvableIdType IdType
- Static Protected Attributes inherited from zypp::sat::Solvable
static const Solvable noSolvable
 Represents no Solvable.

Detailed Description

Interface base for resolvable objects (identification and dependencies).

Todo:
Merge with ResObject

Definition at line 39 of file Resolvable.h.


Member Typedef Documentation

Definition at line 47 of file Resolvable.h.


Constructor & Destructor Documentation

zypp::Resolvable::Resolvable ( const sat::Solvable solvable_r)
protected

Ctor.

Definition at line 27 of file Resolvable.cc.

zypp::Resolvable::~Resolvable ( )
protectedvirtual

Dtor.

Definition at line 36 of file Resolvable.cc.


Member Function Documentation

bool zypp::Resolvable::isSystem ( ) const
inline

Whether this represents an installed solvable.

Reimplemented from zypp::sat::Solvable.

Definition at line 57 of file Resolvable.h.

bool zypp::Resolvable::onSystemByUser ( ) const
inline

Whether this is known to be installed on behalf of a user request.

Note:
This is a hint guessed by evaluating an available install history. Returns false for non-system (uninstalled) solvables, or if no history is available.

Reimplemented from zypp::sat::Solvable.

Definition at line 61 of file Resolvable.h.

IdString zypp::Resolvable::ident ( ) const
inline

The identifier.

This is the solvables name, except for packages and source packes, prefixed by it's kind.

Reimplemented from zypp::sat::Solvable.

Definition at line 64 of file Resolvable.h.

ResKind zypp::Resolvable::kind ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 67 of file Resolvable.h.

bool zypp::Resolvable::isKind ( const ResKind kind_r) const
inline

Test whether a Solvable is of a certain ResKind.

The test is far cheaper than actually retriveing and comparing the kind.

Reimplemented from zypp::sat::Solvable.

Definition at line 70 of file Resolvable.h.

template<class _Res >
bool zypp::Resolvable::isKind ( ) const
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Reimplemented from zypp::sat::Solvable.

Definition at line 74 of file Resolvable.h.

std::string zypp::Resolvable::name ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 77 of file Resolvable.h.

Edition zypp::Resolvable::edition ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 80 of file Resolvable.h.

Arch zypp::Resolvable::arch ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 83 of file Resolvable.h.

bool zypp::Resolvable::multiversionInstall ( ) const
inline

Whether different versions of this package can be installed at the same time.

Per default false.

See also:
also ZConfig::multiversion.

Reimplemented from zypp::sat::Solvable.

Definition at line 89 of file Resolvable.h.

Capabilities zypp::Resolvable::dep ( Dep  which_r) const
inline

Select by Dep.

Definition at line 95 of file Resolvable.h.

Capabilities zypp::Resolvable::operator[] ( Dep  which_r) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 98 of file Resolvable.h.

Capabilities zypp::Resolvable::provides ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 101 of file Resolvable.h.

Capabilities zypp::Resolvable::requires ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 104 of file Resolvable.h.

Capabilities zypp::Resolvable::conflicts ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 107 of file Resolvable.h.

Capabilities zypp::Resolvable::obsoletes ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 110 of file Resolvable.h.

Capabilities zypp::Resolvable::recommends ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 113 of file Resolvable.h.

Capabilities zypp::Resolvable::suggests ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 116 of file Resolvable.h.

Capabilities zypp::Resolvable::enhances ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 119 of file Resolvable.h.

Capabilities zypp::Resolvable::supplements ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 122 of file Resolvable.h.

Capabilities zypp::Resolvable::prerequires ( ) const
inline

Reimplemented from zypp::sat::Solvable.

Definition at line 125 of file Resolvable.h.

CapabilitySet zypp::Resolvable::providesNamespace ( const std::string &  namespace_r) const
inline

Return the namespaced provides 'namespace([value])[ op edition]' of this Solvable.

Reimplemented from zypp::sat::Solvable.

Definition at line 128 of file Resolvable.h.

CapabilitySet zypp::Resolvable::valuesOfNamespace ( const std::string &  namespace_r) const
inline

Return 'value[ op edition]' for namespaced provides 'namespace(value)[ op edition]'.

Similar to providesNamespace, but the namespace is stripped from the dependencies. This is convenient if the namespace denotes packages that should be looked up. E.g. the weakremover namespace used in a products release package denotes the packages that were dropped from the distribution.

See also:
Product::droplist

Reimplemented from zypp::sat::Solvable.

Definition at line 131 of file Resolvable.h.

const sat::Solvable& zypp::Resolvable::satSolvable ( ) const
inline

Access the corresponding ::Solvable.

Definition at line 137 of file Resolvable.h.

PoolItem zypp::Resolvable::poolItem ( ) const

Access the corresponding PoolItem.

Definition at line 44 of file Resolvable.cc.

std::ostream & zypp::Resolvable::dumpOn ( std::ostream &  str) const
protectedvirtual

Helper for stream output.

Reimplemented from zypp::base::ReferenceCounted.

Reimplemented in zypp::ResObject.

Definition at line 52 of file Resolvable.cc.


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  str,
const Resolvable obj 
)
friend
std::ostream & operator<< ( std::ostream &  str,
const Resolvable obj 
)
related

Stream output

Definition at line 153 of file Resolvable.h.

std::ostream & dumpOn ( std::ostream &  str,
const Resolvable obj 
)
related

More verbose stream output including dependencies

Definition at line 157 of file Resolvable.h.

template<class _Res >
bool isKind ( const Resolvable::constPtr p)
related

Test whether a Resolvable::Ptr is of a certain Kind.

Returns:
Ture iff p is not NULL and points to a Resolvable of the specified Kind.
isKind<Package>(resPtr);

Definition at line 169 of file Resolvable.h.

template<class _Res >
ResTraits< _Res >::PtrType asKind ( const Resolvable::Ptr p)
related

Convert Resolvable::Ptr into Ptr of a certain Kind.

Returns:
NULL iff p is NULL or points to a Resolvable not of the specified Kind.
asKind<Package>(resPtr);

Reimplemented in zypp::ResObject.

Definition at line 192 of file Resolvable.h.

int compareByN ( const Resolvable::constPtr lhs,
const Resolvable::constPtr rhs 
)
related

Compare Resolvable::constPtr according to kind and name.

Definition at line 204 of file Resolvable.h.

int compareByNVR ( const Resolvable::constPtr lhs,
const Resolvable::constPtr rhs 
)
related

Compare Resolvable::constPtr according to kind, name and edition(compare!).

Definition at line 220 of file Resolvable.h.

int compareByNVRA ( const Resolvable::constPtr lhs,
const Resolvable::constPtr rhs 
)
related

Compare Resolvable::constPtr according to kind, name, edition(compare!) and arch.

Definition at line 238 of file Resolvable.h.


The documentation for this class was generated from the following files: