zypp::Edition Class Reference

Edition represents [epoch:]version[-release]. More...

#include <Edition.h>

Inheritance diagram for zypp::Edition:

Inheritance graph
[legend]

List of all members.

Match two Editions

Match two Editions returning -1,0,1, treating empty version/release strings as ANY.

int match (const Edition &rhs) const
int match (const IdString &rhs) const
int match (const std::string &rhs) const
int match (const char *rhs) const
static int match (const Edition &lhs, const Edition &rhs)
static int match (const Edition &lhs, const IdString &rhs)
static int match (const Edition &lhs, const std::string &rhs)
static int match (const Edition &lhs, const char *rhs)
static int match (const IdString &lhs, const Edition &rhs)
static int match (const IdString &lhs, const IdString &rhs)
static int match (const IdString &lhs, const std::string &rhs)
static int match (const IdString &lhs, const char *rhs)
static int match (const std::string &lhs, const Edition &rhs)
static int match (const std::string &lhs, const IdString &rhs)
static int match (const std::string &lhs, const std::string &rhs)
static int match (const std::string &lhs, const char *rhs)
static int match (const char *lhs, const Edition &rhs)
static int match (const char *lhs, const IdString &rhs)
static int match (const char *lhs, const std::string &rhs)
static int match (const char *lhs, const char *rhs)

Public Types

typedef unsigned epoch_t
 Type of an epoch.
typedef zypp::Compare< EditionCompare
 compare functor.
typedef Range< EditionCompareRange
 Edition Range based on Compare.
typedef Range< Edition, MatchMatchRange
 Edition Range based on Match.

Public Member Functions

 Edition ()
 Default ctor: noedition.
 Edition (IdString::IdType id_r)
 Ctor taking edition as string.
 Edition (const IdString &idstr_r)
 Edition (const std::string &str_r)
 Edition (const char *cstr_r)
 Edition (const std::string &version_r, const std::string &release_r, epoch_t epoch_r=noepoch)
 Ctor taking version_r, release_r and optional epoch_r.
 Edition (const char *version_r, const char *release_r, epoch_t epoch_r=noepoch)
 Edition (const std::string &version_r, const std::string &release_r, const std::string &epoch_r)
 Ctor taking version_r, release_r and optional epoch_r as string.
 Edition (const char *version_r, const char *release_r, const char *epoch_r)
epoch_t epoch () const
 Epoch.
std::string version () const
 Version.
std::string release () const
 Release.

Static Public Attributes

static const epoch_t noepoch = 0
 Value representing noepoch.
static const Edition noedition
 Value representing noedition ("") This is in fact a valid Edition.

Static Private Member Functions

static int _doCompare (const char *lhs, const char *rhs)
static int _doMatch (const char *lhs, const char *rhs)

Private Attributes

IdString _str

Friends

class IdStringType< Edition >

Classes

struct  Match
 match functor. More...


Detailed Description

Edition represents [epoch:]version[-release].

Comparison is actually g_BackendSpecific.

Attention:
operator< defines equivalence classes of version strings, as non alphanumeric chars are ignored. That' why 1.0 and 1_0 compare equal in the example.

Edition::match compares two editions, treating empty version or release strings as wildcard. Thus match is not transitive, and you don't want to use it to order keys in a a std::container.

Definition at line 60 of file Edition.h.


Member Typedef Documentation

typedef unsigned zypp::Edition::epoch_t

Type of an epoch.

Definition at line 64 of file Edition.h.

Edition Range based on Compare.

See also:
Comparison using relational operator zypp::Rel..

Definition at line 122 of file Edition.h.

Edition Range based on Match.

See also:
Comparison using relational operator zypp::Rel..

Definition at line 169 of file Edition.h.


Constructor & Destructor Documentation

zypp::Edition::Edition (  )  [inline]

Default ctor: noedition.

Definition at line 77 of file Edition.h.

zypp::Edition::Edition ( IdString::IdType  id_r  )  [inline, explicit]

Ctor taking edition as string.

Definition at line 80 of file Edition.h.

zypp::Edition::Edition ( const IdString idstr_r  )  [inline, explicit]

Definition at line 81 of file Edition.h.

zypp::Edition::Edition ( const std::string &  str_r  )  [inline, explicit]

Definition at line 82 of file Edition.h.

zypp::Edition::Edition ( const char *  cstr_r  )  [inline, explicit]

Definition at line 83 of file Edition.h.

zypp::Edition::Edition ( const std::string &  version_r,
const std::string &  release_r,
epoch_t  epoch_r = noepoch 
)

Ctor taking version_r, release_r and optional epoch_r.

Definition at line 58 of file Edition.cc.

zypp::Edition::Edition ( const char *  version_r,
const char *  release_r,
epoch_t  epoch_r = noepoch 
)

Definition at line 64 of file Edition.cc.

zypp::Edition::Edition ( const std::string &  version_r,
const std::string &  release_r,
const std::string &  epoch_r 
)

Ctor taking version_r, release_r and optional epoch_r as string.

Definition at line 70 of file Edition.cc.

zypp::Edition::Edition ( const char *  version_r,
const char *  release_r,
const char *  epoch_r 
)

Definition at line 76 of file Edition.cc.


Member Function Documentation

Edition::epoch_t zypp::Edition::epoch (  )  const

std::string zypp::Edition::version (  )  const

std::string zypp::Edition::release (  )  const

static int zypp::Edition::match ( const Edition lhs,
const Edition rhs 
) [inline, static]

Definition at line 130 of file Edition.h.

References zypp::IdStringType< Derived >::idStr().

Referenced by match(), and zypp::Edition::Match::operator()().

static int zypp::Edition::match ( const Edition lhs,
const IdString rhs 
) [inline, static]

Definition at line 131 of file Edition.h.

References zypp::IdStringType< Derived >::idStr(), and match().

static int zypp::Edition::match ( const Edition lhs,
const std::string &  rhs 
) [inline, static]

Definition at line 132 of file Edition.h.

References _doMatch(), and zypp::IdStringType< Derived >::c_str().

static int zypp::Edition::match ( const Edition lhs,
const char *  rhs 
) [inline, static]

Definition at line 133 of file Edition.h.

References _doMatch(), and zypp::IdStringType< Derived >::c_str().

static int zypp::Edition::match ( const IdString lhs,
const Edition rhs 
) [inline, static]

Definition at line 135 of file Edition.h.

References zypp::IdStringType< Derived >::idStr(), and match().

static int zypp::Edition::match ( const IdString lhs,
const IdString rhs 
) [inline, static]

Definition at line 136 of file Edition.h.

References _doMatch(), zypp::IdString::c_str(), and zypp::IdString::compareEQ().

static int zypp::Edition::match ( const IdString lhs,
const std::string &  rhs 
) [inline, static]

Definition at line 138 of file Edition.h.

References _doMatch(), and zypp::IdString::c_str().

static int zypp::Edition::match ( const IdString lhs,
const char *  rhs 
) [inline, static]

Definition at line 139 of file Edition.h.

References _doMatch(), and zypp::IdString::c_str().

static int zypp::Edition::match ( const std::string &  lhs,
const Edition rhs 
) [inline, static]

Definition at line 141 of file Edition.h.

References _doMatch(), and zypp::IdStringType< Derived >::c_str().

static int zypp::Edition::match ( const std::string &  lhs,
const IdString rhs 
) [inline, static]

Definition at line 142 of file Edition.h.

References _doMatch(), and zypp::IdString::c_str().

static int zypp::Edition::match ( const std::string &  lhs,
const std::string &  rhs 
) [inline, static]

Definition at line 143 of file Edition.h.

References _doMatch().

static int zypp::Edition::match ( const std::string &  lhs,
const char *  rhs 
) [inline, static]

Definition at line 144 of file Edition.h.

References _doMatch().

static int zypp::Edition::match ( const char *  lhs,
const Edition rhs 
) [inline, static]

Definition at line 146 of file Edition.h.

References _doMatch(), and zypp::IdStringType< Derived >::c_str().

static int zypp::Edition::match ( const char *  lhs,
const IdString rhs 
) [inline, static]

Definition at line 147 of file Edition.h.

References _doMatch(), and zypp::IdString::c_str().

static int zypp::Edition::match ( const char *  lhs,
const std::string &  rhs 
) [inline, static]

Definition at line 148 of file Edition.h.

References _doMatch().

static int zypp::Edition::match ( const char *  lhs,
const char *  rhs 
) [inline, static]

Definition at line 149 of file Edition.h.

References _doMatch().

int zypp::Edition::match ( const Edition rhs  )  const [inline]

Definition at line 151 of file Edition.h.

References zypp::IdStringType< Derived >::idStr(), and match().

int zypp::Edition::match ( const IdString rhs  )  const [inline]

Definition at line 152 of file Edition.h.

References zypp::IdStringType< Derived >::idStr(), and match().

int zypp::Edition::match ( const std::string &  rhs  )  const [inline]

Definition at line 153 of file Edition.h.

References _doMatch(), and zypp::IdStringType< Derived >::c_str().

int zypp::Edition::match ( const char *  rhs  )  const [inline]

Definition at line 154 of file Edition.h.

References _doMatch(), and zypp::IdStringType< Derived >::c_str().

int zypp::Edition::_doCompare ( const char *  lhs,
const char *  rhs 
) [static, private]

Reimplemented from zypp::IdStringType< Derived >.

Definition at line 120 of file Edition.cc.

References zypp::sat::detail::PoolMember::myPool().

int zypp::Edition::_doMatch ( const char *  lhs,
const char *  rhs 
) [static, private]

Definition at line 127 of file Edition.cc.

References zypp::sat::detail::PoolMember::myPool().

Referenced by match().


Friends And Related Function Documentation

friend class IdStringType< Edition > [friend]

Definition at line 176 of file Edition.h.


Member Data Documentation

const epoch_t zypp::Edition::noepoch = 0 [static]

Value representing noepoch.

Definition at line 67 of file Edition.h.

Referenced by zypp::solver::detail::helixXML().

Value representing noedition ("") This is in fact a valid Edition.

It's what the default ctor creates or will be parsed from an empty string.

Definition at line 73 of file Edition.h.

Referenced by zypp::target::QueryInstalledEditionHelper::operator()(), zypp::target::rpm::RpmDb::pubkeyEditions(), zypp::target::rpm::RpmDb::pubkeys(), zypp::relFromStr(), and zypp::repo::PackageProvider::tryDelta().

Definition at line 177 of file Edition.h.


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

Generated on Tue May 5 14:49:21 2015 for libzypp by  doxygen 1.5.6