zypp::Resolvable Class Reference

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

#include <Resolvable.h>

Inheritance diagram for zypp::Resolvable:
[legend]

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

const Kindkind () const
const std::string & name () const
const Editionedition () const
const Archarch () const
Dependencies.
const CapSetdep (Dep which_r) const
 Select by Dep.
const Dependenciesdeps () const
 All dependencies.
Deprecated.
void injectProvides (const Capability &cap_r)
void injectRequires (const Capability &cap_r)

Protected Member Functions

 Resolvable (const Kind &kind_r, const NVRAD &nvrad_r)
 Ctor.
virtual ~Resolvable ()
 Dtor.
virtual std::ostream & dumpOn (std::ostream &str) const
 Helper for stream output.

Private Attributes

RW_pointer< Impl_pimpl
 Pointer to implementation.

Related Functions

(Note that these are not member functions.)

template<class _Res>
bool isKind (const Resolvable::constPtr &p)
 Test whether a Resolvable::Ptr is of a certain Kind.
int compareByN (const Resolvable::constPtr &lhs, const Resolvable::constPtr &rhs)
 Compare Resolvable::constPtr according to kind and name.
int compareByNVR (const Resolvable::constPtr &lhs, const Resolvable::constPtr &rhs)
 Compare Resolvable::constPtr according to kind, name and edition(compare!).
int compareByNVRA (const Resolvable::constPtr &lhs, const Resolvable::constPtr &rhs)
 Compare Resolvable::constPtr according to kind, name, edition(compare!) and arch.

Classes

struct  Impl
 Implementation of Resovable. More...


Detailed Description

Interface base for resolvable objects (identification and dependencies).

Invariant:
provides name = edition

prerequires is a subset of requires

Definition at line 43 of file Resolvable.h.


Member Typedef Documentation

typedef Resolvable zypp::Resolvable::Self

Reimplemented in zypp::Atom, zypp::Language, zypp::Message, zypp::Package, zypp::Patch, zypp::Pattern, zypp::Product, zypp::ResObject, zypp::Script, zypp::Selection, zypp::SrcPackage, and zypp::SystemResObject.

Definition at line 46 of file Resolvable.h.

typedef ResTraits<Self> zypp::Resolvable::TraitsType

Reimplemented in zypp::Atom, zypp::Language, zypp::Message, zypp::Package, zypp::Patch, zypp::Pattern, zypp::Product, zypp::ResObject, zypp::Script, zypp::Selection, zypp::SrcPackage, and zypp::SystemResObject.

Definition at line 47 of file Resolvable.h.

typedef TraitsType::KindType zypp::Resolvable::Kind

Definition at line 48 of file Resolvable.h.

typedef TraitsType::PtrType zypp::Resolvable::Ptr

Reimplemented in zypp::Atom, zypp::Language, zypp::Message, zypp::Package, zypp::Patch, zypp::Pattern, zypp::Product, zypp::ResObject, zypp::Script, zypp::Selection, zypp::SrcPackage, and zypp::SystemResObject.

Definition at line 49 of file Resolvable.h.

typedef TraitsType::constPtrType zypp::Resolvable::constPtr

Reimplemented in zypp::Atom, zypp::Language, zypp::Message, zypp::Package, zypp::Patch, zypp::Pattern, zypp::Product, zypp::ResObject, zypp::Script, zypp::Selection, zypp::SrcPackage, and zypp::SystemResObject.

Definition at line 50 of file Resolvable.h.


Constructor & Destructor Documentation

zypp::Resolvable::Resolvable ( const Kind kind_r,
const NVRAD nvrad_r 
) [protected]

Ctor.

Definition at line 32 of file Resolvable.cc.

zypp::Resolvable::~Resolvable (  )  [protected, virtual]

Dtor.

Definition at line 42 of file Resolvable.cc.


Member Function Documentation

const Resolvable::Kind & zypp::Resolvable::kind (  )  const

Definition at line 54 of file Resolvable.cc.

References _pimpl.

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

Definition at line 57 of file Resolvable.cc.

References _pimpl.

Referenced by zypp::repo::doProvideScript(), and zypp::repo::doProvideSrcPackage().

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

Definition at line 60 of file Resolvable.cc.

References _pimpl.

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

Definition at line 63 of file Resolvable.cc.

References _pimpl.

const CapSet & zypp::Resolvable::dep ( Dep  which_r  )  const

Select by Dep.

Definition at line 66 of file Resolvable.cc.

References _pimpl.

const Dependencies & zypp::Resolvable::deps (  )  const

All dependencies.

Definition at line 69 of file Resolvable.cc.

References _pimpl.

void zypp::Resolvable::injectProvides ( const Capability cap_r  ) 

Definition at line 73 of file Resolvable.cc.

References _pimpl.

void zypp::Resolvable::injectRequires ( const Capability cap_r  ) 

Definition at line 76 of file Resolvable.cc.

References _pimpl.

std::ostream & zypp::Resolvable::dumpOn ( std::ostream &  str  )  const [protected, virtual]

Helper for stream output.

Reimplemented from zypp::base::ReferenceCounted.

Reimplemented in zypp::ResObject.

Definition at line 51 of file Resolvable.cc.

References _pimpl.

Referenced by zypp::ResObject::dumpOn().


Friends And Related Function Documentation

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 102 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 137 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 153 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 171 of file Resolvable.h.


Member Data Documentation

RW_pointer<Impl> zypp::Resolvable::_pimpl [private]

Pointer to implementation.

Definition at line 87 of file Resolvable.h.

Referenced by arch(), dep(), deps(), dumpOn(), edition(), injectProvides(), injectRequires(), kind(), and name().


The documentation for this class was generated from the following files:
Generated on Tue Sep 25 19:23:16 2007 for libzypp by  doxygen 1.5.3