libzypp  17.18.0
SolvableType.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
11 #ifndef ZYPP_SAT_SOLVABLETYPE_H
12 #define ZYPP_SAT_SOLVABLETYPE_H
13 
14 #include <iosfwd>
15 
16 #include "zypp/sat/Solvable.h"
17 #include "zypp/Repository.h"
18 #include "zypp/OnMediaLocation.h"
19 #include "zypp/ByteCount.h"
20 #include "zypp/CheckSum.h"
21 #include "zypp/CpeId.h"
22 #include "zypp/Date.h"
23 
25 namespace zypp
26 {
28  namespace sat
29  {
53  template <class Derived>
54  struct SolvableType
55  {
57  Solvable satSolvable() const { return Solvable(static_cast<const Derived&>(*this)); }
58 
59  explicit operator bool() const { return bool(satSolvable()); }
60 
61  IdString ident() const { return satSolvable().ident(); }
62 
63  ResKind kind() const { return satSolvable().kind(); }
64  bool isKind( const ResKind & kind_r ) const { return satSolvable().isKind( kind_r ); }
65  template<class TRes>
66  bool isKind() const { return satSolvable().template isKind<TRes>(); }
67  template<class TIterator>
68  bool isKind( TIterator begin, TIterator end ) const { return satSolvable().isKind( begin, end ); }
69 
70  std::string name() const { return satSolvable().name(); }
71  Edition edition() const { return satSolvable().edition(); }
72  Arch arch() const { return satSolvable().arch(); }
73  IdString vendor() const { return satSolvable().vendor(); }
74 
75  Repository repository() const { return satSolvable().repository(); }
76  RepoInfo repoInfo() const { return satSolvable().repoInfo(); }
77 
78  bool isSystem() const { return satSolvable().isSystem(); }
79  bool onSystemByUser() const { return satSolvable().onSystemByUser(); }
80  bool onSystemByAuto() const { return satSolvable().onSystemByAuto(); }
83  bool isNeedreboot() const { return satSolvable().isNeedreboot(); }
84  bool isRetracted() const { return satSolvable().isRetracted(); }
85  bool isPtf() const { return satSolvable().isPtf(); }
86 
87  Date buildtime() const { return satSolvable().buildtime(); }
88  Date installtime() const { return satSolvable().installtime(); }
89 
90  std::string asString() const { return satSolvable().asString(); }
91  std::string asUserString() const { return satSolvable().asUserString(); }
92 
93  bool identical( const Solvable & rhs ) const { return satSolvable().identical( rhs ); }
94  template <class RDerived>
95  bool identical( const SolvableType<RDerived> & rhs ) const { return satSolvable().identical( rhs.satSolvable() ); }
96 
97  bool sameNVRA( const Solvable &rhs ) const { return satSolvable().sameNVRA( rhs ); }
98  template <class RDerived>
99  bool sameNVRA( const SolvableType<RDerived> & rhs ) const { return satSolvable().sameNVRA( rhs.satSolvable() ); }
100 
101  Capabilities provides() const { return satSolvable().provides(); }
102  Capabilities requires() const { return satSolvable().requires(); }
103  Capabilities conflicts() const { return satSolvable().conflicts(); }
104  Capabilities obsoletes() const { return satSolvable().obsoletes(); }
106  Capabilities suggests() const { return satSolvable().suggests(); }
107  Capabilities enhances() const { return satSolvable().enhances(); }
110  Capabilities dep( Dep which_r ) const { return satSolvable().dep(which_r); }
111  Capabilities operator[]( Dep which_r ) const { return satSolvable()[which_r]; }
112 
113  CapabilitySet providesNamespace( const std::string & namespace_r ) const { return satSolvable().providesNamespace( namespace_r ); }
114  CapabilitySet valuesOfNamespace( const std::string & namespace_r ) const { return satSolvable().valuesOfNamespace( namespace_r ); }
115 
116  bool supportsLocales() const { return satSolvable().supportsLocales(); }
117  bool supportsLocale( const Locale & locale_r ) const { return satSolvable().supportsLocale( locale_r ); }
118  bool supportsLocale( const LocaleSet & locales_r ) const { return satSolvable().supportsLocale( locales_r ); }
121 
122  CpeId cpeId() const { return satSolvable().cpeId(); }
123  unsigned mediaNr() const { return satSolvable().mediaNr(); }
126  std::string distribution() const { return satSolvable().distribution(); }
127 
128  std::string summary( const Locale & lang_r = Locale() ) const { return satSolvable().summary( lang_r ); }
129  std::string description( const Locale & lang_r = Locale() ) const { return satSolvable().description( lang_r ); }
130  std::string insnotify( const Locale & lang_r = Locale() ) const { return satSolvable().insnotify( lang_r ); }
131  std::string delnotify( const Locale & lang_r = Locale() ) const { return satSolvable().delnotify( lang_r ); }
132  std::string licenseToConfirm( const Locale & lang_r = Locale() ) const { return satSolvable().licenseToConfirm( lang_r ); }
134 
135  public:
136  std::string lookupStrAttribute( const SolvAttr & attr ) const { return satSolvable().lookupStrAttribute( attr ); }
137  std::string lookupStrAttribute( const SolvAttr & attr, const Locale & lang_r ) const { return satSolvable().lookupStrAttribute( attr, lang_r ); }
138  bool lookupBoolAttribute( const SolvAttr & attr ) const { return satSolvable().lookupBoolAttribute( attr ); }
140  unsigned long long lookupNumAttribute( const SolvAttr & attr ) const { return satSolvable().lookupNumAttribute( attr ); }
141  unsigned long long lookupNumAttribute( const SolvAttr & attr, unsigned long long notfound_r ) const { return satSolvable().lookupNumAttribute( attr, notfound_r ); }
144  Solvable::IdType id() const { return satSolvable().id(); }
145 
146  protected:
149  void operator=( const SolvableType & ) {}
150 #ifndef SWIG
152  void operator=( SolvableType && ) {}
153 #endif
155  };
156 
158  template <class Derived>
159  inline std::ostream & operator<<( std::ostream & str, const SolvableType<Derived> & obj )
160  { return str << obj.satSolvable(); }
161 
163  template <class Derived>
164  inline std::ostream & dumpOn( std::ostream & str, const SolvableType<Derived> & obj )
165  { return dumpOn( str, obj.satSolvable() ); }
166 
168  template <class LDerived, class RDerived>
169  inline bool operator==( const SolvableType<LDerived> & lhs, const SolvableType<RDerived> & rhs )
170  { return lhs.satSolvable() == rhs.satSolvable(); }
172  template <class Derived>
173  inline bool operator==( const SolvableType<Derived> & lhs, const Solvable & rhs )
174  { return lhs.satSolvable() == rhs; }
176  template <class Derived>
177  inline bool operator==( const Solvable & lhs, const SolvableType<Derived> & rhs )
178  { return lhs == rhs.satSolvable(); }
179 
181  template <class LDerived, class RDerived>
182  inline bool operator!=( const SolvableType<LDerived> & lhs, const SolvableType<RDerived> & rhs )
183  { return lhs.satSolvable() != rhs.satSolvable(); }
185  template <class Derived>
186  inline bool operator!=( const SolvableType<Derived> & lhs, const Solvable & rhs )
187  { return lhs.satSolvable() != rhs; }
189  template <class Derived>
190  inline bool operator!=( const Solvable & lhs, const SolvableType<Derived> & rhs )
191  { return lhs != rhs.satSolvable(); }
192 
194  template <class LDerived, class RDerived>
195  inline bool operator<( const SolvableType<LDerived> & lhs, const SolvableType<RDerived> & rhs )
196  { return lhs.satSolvable() < rhs.satSolvable(); }
198  template <class Derived>
199  inline bool operator<( const SolvableType<Derived> & lhs, const Solvable & rhs )
200  { return lhs.satSolvable() < rhs; }
202  template <class Derived>
203  inline bool operator<( const Solvable & lhs, const SolvableType<Derived> & rhs )
204  { return lhs < rhs.satSolvable(); }
205 
207  template<class TRes, class Derived>
208  inline bool isKind( const SolvableType<Derived> & solvable_r )
209  { return isKind<TRes>( solvable_r.satSolvable() ); }
210 
212  template <class LDerived, class RDerived>
213  inline bool identical( const SolvableType<LDerived> & lhs, const SolvableType<RDerived> & rhs )
214  { return identical( lhs.satSolvable(), rhs.satSolvable() ); }
216  template <class Derived>
217  inline bool identical( const SolvableType<Derived> & lhs, const Solvable & rhs )
218  { return identical( lhs.satSolvable(), rhs ); }
220  template <class Derived>
221  inline bool identical( const Solvable & lhs, const SolvableType<Derived> & rhs )
222  { return identical( lhs, rhs.satSolvable() ); }
223 
225  template <class LDerived, class RDerived>
226  inline bool sameNVRA( const SolvableType<LDerived> & lhs, const SolvableType<RDerived> & rhs )
227  { return sameNVRA( lhs.satSolvable(), rhs.satSolvable() ); }
229  template <class Derived>
230  inline bool sameNVRA( const SolvableType<Derived> & lhs, const Solvable & rhs )
231  { return sameNVRA( lhs.satSolvable(), rhs ); }
233  template <class Derived>
234  inline bool sameNVRA( const Solvable & lhs, const SolvableType<Derived> & rhs )
235  { return sameNVRA( lhs, rhs.satSolvable() ); }
236 
237 
239  template <class LDerived, class RDerived>
240  inline int compareByN( const SolvableType<LDerived> & lhs, const SolvableType<RDerived> & rhs )
241  { return compareByN( lhs.satSolvable(), rhs.satSolvable() ); }
243  template <class Derived>
244  inline bool compareByN( const SolvableType<Derived> & lhs, const Solvable & rhs )
245  { return compareByN( lhs.satSolvable(), rhs ); }
247  template <class Derived>
248  inline bool compareByN( const Solvable & lhs, const SolvableType<Derived> & rhs )
249  { return compareByN( lhs, rhs.satSolvable() ); }
250 
251 
253  template <class LDerived, class RDerived>
254  inline int compareByNVR( const SolvableType<LDerived> & lhs, const SolvableType<RDerived> & rhs )
255  { return compareByNVR( lhs.satSolvable(), rhs.satSolvable() ); }
257  template <class Derived>
258  inline bool compareByNVR( const SolvableType<Derived> & lhs, const Solvable & rhs )
259  { return compareByNVR( lhs.satSolvable(), rhs ); }
261  template <class Derived>
262  inline bool compareByNVR( const Solvable & lhs, const SolvableType<Derived> & rhs )
263  { return compareByNVR( lhs, rhs.satSolvable() ); }
264 
266  template <class LDerived, class RDerived>
267  inline int compareByNVRA( const SolvableType<LDerived> & lhs, const SolvableType<RDerived> & rhs )
268  { return compareByNVRA( lhs.satSolvable(), rhs.satSolvable() ); }
270  template <class Derived>
271  inline bool compareByNVRA( const SolvableType<Derived> & lhs, const Solvable & rhs )
272  { return compareByNVRA( lhs.satSolvable(), rhs ); }
274  template <class Derived>
275  inline bool compareByNVRA( const Solvable & lhs, const SolvableType<Derived> & rhs )
276  { return compareByNVRA( lhs, rhs.satSolvable() ); }
277 
278  } // namespace sat
280 } // namespace zypp
282 #endif // ZYPP_SAT_SOLVABLETYPE_H
std::ostream & dumpOn(std::ostream &str, const SolvableType< Derived > &obj)
Definition: SolvableType.h:164
bool sameNVRA(const Solvable &rhs) const
Test for same name-version-release.arch.
Definition: Solvable.h:181
std::string description(const Locale &lang_r=Locale()) const
Long (multiline) text describing the solvable (opt.
Definition: Solvable.cc:708
std::string name() const
The name (without any ResKind prefix).
Definition: Solvable.cc:328
Date installtime() const
Definition: SolvableType.h:88
int IdType
Generic Id type.
Definition: PoolMember.h:104
A Solvable object within the sat Pool.
Definition: Solvable.h:53
bool sameNVRA(const Solvable &rhs) const
Definition: SolvableType.h:97
IdString vendor() const
The vendor.
Definition: Solvable.cc:356
Capabilities supplements() const
Definition: SolvableType.h:108
IdType id() const
Expert backdoor.
Definition: Solvable.h:399
Capabilities prerequires() const
Definition: SolvableType.h:109
Capabilities provides() const
Definition: Solvable.cc:465
RepoInfo repoInfo() const
The repositories RepoInfo.
Definition: Solvable.cc:368
Capabilities provides() const
Definition: SolvableType.h:101
ResKind kind() const
The Solvables ResKind.
Definition: Solvable.cc:274
Container of Capability (currently read only).
Definition: Capabilities.h:35
Describes a path on a certain media amongs as the information required to download it,...
Enumeration class of dependency types.
Definition: Dep.h:29
bool compareByNVRA(const SolvableType< Derived > &lhs, const Solvable &rhs)
Definition: SolvableType.h:271
OnMediaLocation lookupLocation() const
returns OnMediaLocation data: This is everything we need to download e.g.
Definition: Solvable.cc:223
Architecture.
Definition: Arch.h:36
LocaleSet getSupportedLocales() const
Return the supported locales.
Definition: Solvable.cc:658
Capabilities recommends() const
Definition: Solvable.cc:485
Store and operate with byte count.
Definition: ByteCount.h:30
bool onSystemByUser() const
Definition: SolvableType.h:79
Capabilities obsoletes() const
Definition: SolvableType.h:104
detail::IdType lookupIdAttribute(const SolvAttr &attr) const
returns the id attribute value for attr or detail::noId if it does not exists.
Definition: Solvable.cc:175
bool operator==(const Map &lhs, const Map &rhs)
Definition: Map.cc:125
bool isNeedreboot() const
Definition: SolvableType.h:83
bool supportsLocales() const
Definition: SolvableType.h:116
sat::SolvAttr attr
Definition: PoolQuery.cc:311
int compareByN(const SolvableType< LDerived > &lhs, const SolvableType< RDerived > &rhs)
Definition: SolvableType.h:240
std::ostream & operator<<(std::ostream &str, const SolvableType< Derived > &obj)
Definition: SolvableType.h:159
String related utilities and Regular expression matching.
Capabilities supplements() const
Definition: Solvable.cc:500
bool isKind(const ResKind &kind_r) const
Test whether a Solvable is of a certain ResKind.
Definition: Solvable.cc:301
bool sameNVRA(const SolvableType< RDerived > &rhs) const
Definition: SolvableType.h:99
int compareByNVR(const SolvableType< LDerived > &lhs, const SolvableType< RDerived > &rhs)
Definition: SolvableType.h:254
What is known about a repository.
Definition: RepoInfo.h:71
std::string delnotify(const Locale &lang_r=Locale()) const
UI hint text when selecting the solvable for uninstall (opt.
Definition: Solvable.cc:720
Access to the sat-pools string space.
Definition: IdString.h:41
Common Platform Enumearation (2.3) See http://cpe.mitre.org/ for more information on the Common Platf...
Definition: CpeId.h:31
void operator=(SolvableType &&)
Definition: SolvableType.h:152
Edition represents [epoch:]version[-release]
Definition: Edition.h:60
bool sameNVRA(const SolvableType< Derived > &lhs, const Solvable &rhs)
Definition: SolvableType.h:230
Edition edition() const
Definition: SolvableType.h:71
Capabilities suggests() const
Definition: SolvableType.h:106
CheckSum lookupCheckSumAttribute(const SolvAttr &attr) const
Definition: SolvableType.h:142
ByteCount downloadSize() const
Download size.
Definition: Solvable.cc:690
bool identical(const Solvable &rhs) const
Test whether two Solvables have the same content.
Definition: Solvable.cc:448
bool compareByN(const SolvableType< Derived > &lhs, const Solvable &rhs)
Definition: SolvableType.h:244
IdString ident() const
Definition: SolvableType.h:61
OnMediaLocation lookupLocation() const
Definition: SolvableType.h:143
bool supportsLocale(const LocaleSet &locales_r) const
Definition: SolvableType.h:118
bool identIsAutoInstalled() const
Definition: SolvableType.h:81
CapabilitySet valuesOfNamespace(const std::string &namespace_r) const
Return 'value[ op edition]' for namespaced provides 'namespace(value)[ op edition]'.
Definition: Solvable.cc:528
std::string asUserString() const
String representation "ident-edition.arch(repo)" or "noSolvable".
Definition: Solvable.cc:438
std::string name() const
Definition: SolvableType.h:70
std::string distribution() const
The distribution string.
Definition: Solvable.cc:696
Repository repository() const
The Repository this Solvable belongs to.
Definition: Solvable.cc:362
bool supportsRequestedLocales() const
Definition: SolvableType.h:119
bool onSystemByAuto() const
Whether this is known to be automatically installed (as dependency of a user request package).
Definition: Solvable.cc:383
Store and operate on date (time_t).
Definition: Date.h:32
std::string distribution() const
Definition: SolvableType.h:126
bool identIsAutoInstalled() const
Whether an installed solvable with the same ident is flagged as AutoInstalled.
Definition: Solvable.h:137
Solvable attribute keys.
Definition: SolvAttr.h:40
Capabilities operator[](Dep which_r) const
Definition: SolvableType.h:111
bool isRetracted() const
Definition: SolvableType.h:84
Capabilities requires() const
Definition: SolvableType.h:102
Capabilities enhances() const
Definition: Solvable.cc:495
Edition edition() const
The edition (version-release).
Definition: Solvable.cc:336
std::string description(const Locale &lang_r=Locale()) const
Definition: SolvableType.h:129
Capabilities dep(Dep which_r) const
Definition: SolvableType.h:110
bool identical(const SolvableType< LDerived > &lhs, const SolvableType< RDerived > &rhs)
Definition: SolvableType.h:213
CapabilitySet providesNamespace(const std::string &namespace_r) const
Return the namespaced provides 'namespace([value])[ op edition]' of this Solvable.
Definition: Solvable.cc:514
bool sameNVRA(const SolvableType< LDerived > &lhs, const SolvableType< RDerived > &rhs)
Definition: SolvableType.h:226
bool operator==(const SolvableType< LDerived > &lhs, const SolvableType< RDerived > &rhs)
Definition: SolvableType.h:169
ByteCount installSize() const
Installed (unpacked) size.
Definition: Solvable.cc:684
bool identical(const SolvableType< Derived > &lhs, const Solvable &rhs)
Definition: SolvableType.h:217
SolvableType(const SolvableType &)
Definition: SolvableType.h:148
RepoInfo repoInfo() const
Definition: SolvableType.h:76
std::string lookupStrAttribute(const SolvAttr &attr, const Locale &lang_r) const
Definition: SolvableType.h:137
unsigned long long lookupNumAttribute(const SolvAttr &attr) const
returns the numeric attribute value for attr or 0 if it does not exists.
Definition: Solvable.cc:157
Solvable::IdType id() const
Definition: SolvableType.h:144
bool onSystemByAuto() const
Definition: SolvableType.h:80
bool identical(const SolvableType< RDerived > &rhs) const
Definition: SolvableType.h:95
unsigned mediaNr() const
Definition: SolvableType.h:123
CheckSum lookupCheckSumAttribute(const SolvAttr &attr) const
returns the CheckSum attribute value for attr or an empty CheckSum if ir does not exist.
Definition: Solvable.cc:181
std::string delnotify(const Locale &lang_r=Locale()) const
Definition: SolvableType.h:131
bool multiversionInstall() const
Definition: SolvableType.h:82
void operator=(const SolvableType &)
Definition: SolvableType.h:149
Arch arch() const
The architecture.
Definition: Solvable.cc:342
bool operator!=(const SolvableType< Derived > &lhs, const Solvable &rhs)
Definition: SolvableType.h:186
bool operator<(const SolvableType< Derived > &lhs, const Solvable &rhs)
Definition: SolvableType.h:199
Capabilities enhances() const
Definition: SolvableType.h:107
unsigned mediaNr() const
Media number the solvable is located on (0 if no media access required).
Definition: Solvable.cc:671
int compareByNVRA(const SolvableType< LDerived > &lhs, const SolvableType< RDerived > &rhs)
Definition: SolvableType.h:267
std::string asString() const
String representation "ident-edition.arch" or "noSolvable".
Definition: Solvable.cc:429
CpeId cpeId() const
The solvables CpeId if available.
Definition: Solvable.cc:665
unsigned long long lookupNumAttribute(const SolvAttr &attr, unsigned long long notfound_r) const
Definition: SolvableType.h:141
bool multiversionInstall() const
Whether different versions of this package can be installed at the same time.
Definition: Solvable.cc:411
Capabilities requires() const
Definition: Solvable.cc:470
std::ostream & dumpOn(std::ostream &str, const LocaleSupport &obj)
CapabilitySet providesNamespace(const std::string &namespace_r) const
Definition: SolvableType.h:113
ByteCount downloadSize() const
Definition: SolvableType.h:125
bool isSystem() const
Return whether this Solvable belongs to the system repo.
Definition: Solvable.cc:372
std::string asString() const
Definition: SolvableType.h:90
std::string asUserString() const
Definition: SolvableType.h:91
bool operator!=(const SolvableType< LDerived > &lhs, const SolvableType< RDerived > &rhs)
Definition: SolvableType.h:182
LocaleSet getSupportedLocales() const
Definition: SolvableType.h:120
'Language[_Country]' codes.
Definition: Locale.h:49
bool supportsLocale(const Locale &locale_r) const
Whether this Solvable supports a specific Locale.
Definition: Solvable.cc:641
bool compareByNVR(const SolvableType< Derived > &lhs, const Solvable &rhs)
Definition: SolvableType.h:258
std::string lookupStrAttribute(const SolvAttr &attr) const
returns the string attribute value for attr or an empty string if it does not exists.
Definition: Solvable.cc:129
std::unordered_set< Capability > CapabilitySet
Definition: Capability.h:33
std::string summary(const Locale &lang_r=Locale()) const
Definition: SolvableType.h:128
bool supportsRequestedLocales() const
Whether this Solvable supports at least one requested locale.
Definition: Solvable.cc:655
bool isNeedreboot() const
Whether this solvable triggers the reboot-needed hint if installed/updated.
Definition: Solvable.cc:393
bool isKind(TIterator begin, TIterator end) const
Definition: SolvableType.h:68
bool supportsLocale(const Locale &locale_r) const
Definition: SolvableType.h:117
bool needToAcceptLicense() const
Definition: SolvableType.h:133
std::string insnotify(const Locale &lang_r=Locale()) const
UI hint text when selecting the solvable for install (opt.
Definition: Solvable.cc:714
std::string summary(const Locale &lang_r=Locale()) const
Short (singleline) text describing the solvable (opt.
Definition: Solvable.cc:702
Capabilities conflicts() const
Definition: Solvable.cc:475
bool onSystemByUser() const
Whether this is known to be installed on behalf of a user request.
Definition: Solvable.cc:378
ByteCount installSize() const
Definition: SolvableType.h:124
Capabilities prerequires() const
Definition: Solvable.cc:505
Capabilities dep(Dep which_r) const
Return Capabilities selected by Dep constant.
Definition: Solvable.h:201
SolvableType(SolvableType &&)
Definition: SolvableType.h:151
unsigned long long lookupNumAttribute(const SolvAttr &attr) const
Definition: SolvableType.h:140
bool needToAcceptLicense() const
True except for well known exceptions (i.e show license but no need to accept it).
Definition: Solvable.cc:743
Capabilities conflicts() const
Definition: SolvableType.h:103
bool isKind(const SolvableType< Derived > &solvable_r)
Definition: SolvableType.h:208
detail::IdType lookupIdAttribute(const SolvAttr &attr) const
Definition: SolvableType.h:139
Capabilities obsoletes() const
Definition: Solvable.cc:480
bool isKind(const ResKind &kind_r) const
Definition: SolvableType.h:64
std::string insnotify(const Locale &lang_r=Locale()) const
Definition: SolvableType.h:130
bool identical(const Solvable &rhs) const
Definition: SolvableType.h:93
Base class for creating Solvable based types.
Definition: SolvableType.h:54
std::string licenseToConfirm(const Locale &lang_r=Locale()) const
Definition: SolvableType.h:132
bool lookupBoolAttribute(const SolvAttr &attr) const
Definition: SolvableType.h:138
sat::detail::SolvableIdType IdType
Definition: Solvable.h:56
std::string lookupStrAttribute(const SolvAttr &attr) const
Definition: SolvableType.h:136
Capabilities recommends() const
Definition: SolvableType.h:105
Resolvable kinds.
Definition: ResKind.h:32
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:1
bool supportsLocales() const
Whether this Solvable claims to support locales.
Definition: Solvable.cc:635
Date buildtime() const
The items build time.
Definition: Solvable.cc:417
Solvable satSolvable() const
Return the corresponding sat::Solvable.
Definition: SolvableType.h:57
std::string licenseToConfirm(const Locale &lang_r=Locale()) const
License or agreement to accept before installing the solvable (opt.
Definition: Solvable.cc:726
bool isPtf() const
Whether this solvable is a PTF (provides ptfToken).
Definition: Solvable.cc:405
std::unordered_set< Locale > LocaleSet
Definition: Locale.h:27
IdString vendor() const
Definition: SolvableType.h:73
bool operator<(const SolvableType< LDerived > &lhs, const SolvableType< RDerived > &rhs)
Definition: SolvableType.h:195
Repository repository() const
Definition: SolvableType.h:75
CapabilitySet valuesOfNamespace(const std::string &namespace_r) const
Definition: SolvableType.h:114
ResKind kind() const
Definition: SolvableType.h:63
Capabilities suggests() const
Definition: Solvable.cc:490
IdString ident() const
The identifier.
Definition: Solvable.cc:268
Date installtime() const
The items install time (false if not installed).
Definition: Solvable.cc:423
Date buildtime() const
Definition: SolvableType.h:87
bool lookupBoolAttribute(const SolvAttr &attr) const
returns the boolean attribute value for attr or false if it does not exists.
Definition: Solvable.cc:169
bool isRetracted() const
Whether this solvable is retracted (provides retractedToken).
Definition: Solvable.cc:399