12 #ifndef ZYPP_SAT_SOLVABLE_H
13 #define ZYPP_SAT_SOLVABLE_H
33 class OnMediaLocation;
74 explicit operator bool()
const
163 {
return isKind( resKind<_Res>() ); }
165 template<
class _Iterator>
166 bool isKind( _Iterator begin, _Iterator end )
167 {
for_( it, begin, end )
if (
isKind( *it ) )
return true;
return false; }
169 std::string
name()
const;
299 std::ostream &
dumpOn( std::ostream & str,
const Solvable & obj );
306 {
return lhs.
get() == rhs.
get(); }
310 {
return lhs.
get() != rhs.
get(); }
314 {
return lhs.
get() < rhs.
get(); }
332 res = lhs.
name().compare( rhs.
name() );
340 int res = compareByN( lhs, rhs );
349 int res = compareByNVR( lhs, rhs );
367 , boost::forward_traversal_tag
442 #endif // ZYPP_SAT_SOLVABLE_H
static const SolvableIdType noSolvableId(0)
Id to denote Solvable::noSolvable.
Repository repository() const
The Repository this Solvable belongs to.
int IdType
Generic Id type.
A Solvable object within the sat Pool.
Capabilities recommends() const
detail::CSolvable * get() const
Expert backdoor.
CapabilitySet providesNamespace(const std::string &namespace_r) const
Return the namespaced provides 'namespace([value])[ op edition]' of this Solvable.
Container of Capability (currently read only).
IdString ident() const
The identifier.
Solvable dereference() const
SolvableIterator(const Solvable &val_r)
Enumeration class of dependency types.
bool supportsLocale(const Locale &locale_r) const
Whether this Solvable supports a specific Locale.
std::ostream & operator<<(std::ostream &str, const FileConflicts &obj)
bool operator==(const Solvable &lhs, const Solvable &rhs)
bool supportsLocales() const
Whether this Solvable claims to support locales.
Capabilities supplements() const
std::string lookupStrAttribute(const SolvAttr &attr) const
returns the string attribute value for attr or an empty string if it does not exists.
ZYPP_DEFINE_ID_HASHABLE(::zypp::sat::Solvable)
std::string asString() const
String representation "ident-edition.arch" or "noSolvable".
bool isSystem() const
Return whether this Solvable belongs to the system repo.
unsigned SolvableIdType
Id type to connect Solvable and sat-solvable.
Capabilities suggests() const
Access to the sat-pools string space.
#define for_(IT, BEG, END)
Convenient for-loops using iterator.
Edition represents [epoch:]version[-release]
::_Solvable CSolvable
Wrapped libsolv C data type exposed as backdoor.
bool identical(Solvable lhs, Solvable rhs)
CapabilitySet valuesOfNamespace(const std::string &namespace_r) const
Return 'value[ op edition]' for namespaced provides 'namespace(value)[ op edition]'.
std::string asUserString() const
String representation "ident-edition.arch(repo)" or "noSolvable".
std::tr1::unordered_set< Capability > CapabilitySet
Capabilities provides() const
static const Solvable noSolvable
Represents no Solvable.
detail::IdType lookupIdAttribute(const SolvAttr &attr) const
returns the id attribute value for attr or detail::noId if it does not exists.
int compareByNVRA(const Solvable &lhs, const Solvable &rhs)
int compare(const Arch &rhs) const
Arch comparison.
static int compare(const Derived &lhs, const Derived &rhs)
Backlink to the associated PoolImpl.
OnMediaLocation lookupLocation() const
returns OnMediaLocation data: This is everything we need to download e.g.
CheckSum lookupCheckSumAttribute(const SolvAttr &attr) const
returns the CheckSum attribute value for attr or an empty CheckSum if ir does not exist...
Convenience char* constructible from std::string and char*, it maps (char*)0 to an empty string...
bool supportsRequestedLocales() const
Whether this Solvable supports at least one requested locale.
bool lookupBoolAttribute(const SolvAttr &attr) const
returns the boolean attribute value for attr or false if it does not exists.
int compareByNVR(const Solvable &lhs, const Solvable &rhs)
bool onSystemByUser() const
Whether this is known to be installed on behalf of a user request.
Solvable operator()(Solvable solv_r) const
unsigned long long lookupNumAttribute(const SolvAttr &attr) const
returns the numeric attribute value for attr or 0 if it does not exists.
LocaleSet getSupportedLocales() const
std::tr1::unordered_set< Locale > LocaleSet
Solvable(IdType id_r)
PoolImpl ctor.
void assignVal(const Solvable &val_r)
std::ostream & dumpOn(std::ostream &str, const LocaleSupport &obj)
Solvable nextInRepo() const
Return next Solvable in Repo (or noSolvable).
Capabilities enhances() const
friend class boost::iterator_core_access
Solvable nextInPool() const
Return next Solvable in Pool (or noSolvable).
Solvable()
Default ctor creates noSolvable.
Capabilities conflicts() const
bool multiversionInstall() const
Whether different versions of this package can be installed at the same time.
SolvableIterator(SolvableIdType id_r)
Capabilities prerequires() const
Helper that splits an identifier into kind and name or vice versa.
int compareByN(const Solvable &lhs, const Solvable &rhs)
Capabilities operator[](Dep which_r) const
Capabilities requires() const
bool operator<(const Solvable &lhs, const Solvable &rhs)
bool sameNVRA(Solvable rhs) const
Test for same name-version-release.arch.
Reference to a PoolItem connecting ResObject and ResStatus.
IdType id() const
Expert backdoor.
std::ostream & dumpAsXmlOn(std::ostream &str, const FileConflicts &obj)
bool isKind(const ResKind &kind_r) const
Test whether a Solvable is of a certain ResKind.
sat::detail::SolvableIdType IdType
To Solvable transform functor.
bool isKind(const sat::Solvable &solvable_r)
bool isKind(_Iterator begin, _Iterator end)
bool sameNVRA(Solvable lhs, Solvable rhs)
Capabilities obsoletes() const
bool operator!=(const Solvable &lhs, const Solvable &rhs)
bool identical(Solvable rhs) const
Test whether two Solvables have the same content.