libzypp  17.36.1
SolvAttr.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
12 #ifndef ZYPP_SAT_SOLVATTR_H
13 #define ZYPP_SAT_SOLVATTR_H
14 
15 #include <iosfwd>
16 #include <string>
17 
18 #include <zypp/base/String.h>
19 #include <zypp/IdStringType.h>
20 
22 namespace zypp
23 {
24 namespace sat
25 {
26 
28  //
29  // CLASS NAME : SolvAttr
30  //
40  class ZYPP_API SolvAttr : public IdStringType<SolvAttr>
41  {
42  public:
46  static const SolvAttr allAttr;
48  static const SolvAttr noAttr;
49 
52  static const SolvAttr name;
53  static const SolvAttr edition;
54  static const SolvAttr arch;
55  static const SolvAttr vendor;
57 
58 
59 #if __cplusplus < 202002L
60 
61  static const SolvAttr provides ZYPP_DEPRECATED; // use dep_ prefixed version instead
62  static const SolvAttr obsoletes ZYPP_DEPRECATED; // use dep_ prefixed version instead
63  static const SolvAttr conflicts ZYPP_DEPRECATED; // use dep_ prefixed version instead
64 #if __GNUC__ >= 10
65 #pragma GCC diagnostic push
66 #pragma GCC diagnostic ignored "-Wc++20-compat"
67 #endif
68  static const SolvAttr requires ZYPP_DEPRECATED; // use dep_ prefixed version instead
69 #if __GNUC__ >= 10
70 #pragma GCC diagnostic pop
71 #endif
72  static const SolvAttr recommends ZYPP_DEPRECATED; // use dep_ prefixed version instead
73  static const SolvAttr suggests ZYPP_DEPRECATED; // use dep_ prefixed version instead
74  static const SolvAttr supplements ZYPP_DEPRECATED; // use dep_ prefixed version instead
75  static const SolvAttr enhances ZYPP_DEPRECATED; // use dep_ prefixed version instead
76 #endif
77 
79  static const SolvAttr dep_provides;
80  static const SolvAttr dep_obsoletes;
81  static const SolvAttr dep_conflicts;
82  static const SolvAttr dep_requires;
83  static const SolvAttr dep_recommends;
84  static const SolvAttr dep_suggests;
85  static const SolvAttr dep_supplements;
86  static const SolvAttr dep_enhances;
87 
90  static const SolvAttr summary;
91  static const SolvAttr description;
92  static const SolvAttr insnotify;
93  static const SolvAttr delnotify;
94  static const SolvAttr eula;
95  static const SolvAttr installtime;
96  static const SolvAttr buildtime;
97  static const SolvAttr installsize;
98  static const SolvAttr downloadsize;
99  static const SolvAttr diskusage;
100  static const SolvAttr cpeid;
102 
105  static const SolvAttr checksum;
106  static const SolvAttr mediadir;
107  static const SolvAttr medianr;
108  static const SolvAttr mediafile;
109  static const SolvAttr changelog;
110  static const SolvAttr buildhost;
111  static const SolvAttr distribution;
112  static const SolvAttr license;
113  static const SolvAttr packager;
114  static const SolvAttr group;
115  static const SolvAttr keywords;
116  static const SolvAttr sourcesize;
117  static const SolvAttr authors;
118  static const SolvAttr filelist;
119  static const SolvAttr sourcearch;
120  static const SolvAttr sourcename;
121  static const SolvAttr sourceevr;
122  static const SolvAttr headerend;
123  static const SolvAttr url;
125 
128  static const SolvAttr patchcategory;
129  static const SolvAttr rebootSuggested;
132  static const SolvAttr message;
133  static const SolvAttr severity;
134  static const SolvAttr updateStatus; // "retracted", "stable",...
135  static const SolvAttr updateCollection; // SUB-STRUCTURE:
136  static const SolvAttr updateCollectionName; // name
137  static const SolvAttr updateCollectionEvr; // evr
138  static const SolvAttr updateCollectionArch; // arch
139  static const SolvAttr updateCollectionFilename; // filename
140  static const SolvAttr updateCollectionFlags; // flags
141  static const SolvAttr updateReference; // SUB-STRUCTURE:
142  static const SolvAttr updateReferenceType; // type
143  static const SolvAttr updateReferenceHref; // href
144  static const SolvAttr updateReferenceId; // id
145  static const SolvAttr updateReferenceTitle; // title
147 
150  static const SolvAttr isvisible;
151  static const SolvAttr icon;
152  static const SolvAttr order;
153  static const SolvAttr isdefault;
154  static const SolvAttr category;
155  static const SolvAttr script;
156  static const SolvAttr includes;
157  static const SolvAttr extends;
159 
167  static const SolvAttr productType;
168  static const SolvAttr productFlags;
173  static const SolvAttr productUrl;
174  static const SolvAttr productUrlType;
175  static const SolvAttr productUpdates; // SUB-STRUCTURE:
176  static const SolvAttr productUpdatesRepoid; // repoid
178 
195 
197  public:
199  SolvAttr() {}
200 
202  explicit SolvAttr( sat::detail::IdType id_r ) : _str( id_r ) {}
203  explicit SolvAttr( const IdString & idstr_r ) : _str( idstr_r ) {}
204  explicit SolvAttr( const std::string & str_r ) : _str( str_r ) {}
205  explicit SolvAttr( const char * cstr_r ) : _str( cstr_r ) {}
206 
211  SolvAttr parent() const;
212 
214  bool hasParent() const
215  { return parent() != noAttr; }
216 
217  private:
218  friend class IdStringType<SolvAttr>;
220  };
221 
223 } // namespace sat
224 } // namespace zypp
226 #endif // ZYPP_sat_SolvAttr_H
static const SolvAttr productFlags
Definition: SolvAttr.h:168
static const SolvAttr productUpdates
array of repoids, hopefully label s too
Definition: SolvAttr.h:175
SolvAttr(const std::string &str_r)
Definition: SolvAttr.h:204
static const SolvAttr dep_provides
Definition: SolvAttr.h:79
static const SolvAttr updateReferenceHref
Definition: SolvAttr.h:143
static const SolvAttr order
Definition: SolvAttr.h:152
static const SolvAttr repositoryExpire
Definition: SolvAttr.h:185
static const SolvAttr isvisible
Definition: SolvAttr.h:150
static const SolvAttr isdefault
Definition: SolvAttr.h:153
static const SolvAttr repositoryProductLabel
Definition: SolvAttr.h:188
static const SolvAttr dep_obsoletes
Definition: SolvAttr.h:80
static const SolvAttr productDistversion
Definition: SolvAttr.h:166
static const SolvAttr allAttr
Value to request searching all Attributes (0).
Definition: SolvAttr.h:46
static const SolvAttr repositoryDeltaInfo
Definition: SolvAttr.h:181
static const SolvAttr updateReference
Definition: SolvAttr.h:141
static const SolvAttr arch
Definition: SolvAttr.h:54
static const SolvAttr installtime
Definition: SolvAttr.h:95
static const SolvAttr changelog
Definition: SolvAttr.h:109
static const SolvAttr productRegisterRelease
Definition: SolvAttr.h:171
static const SolvAttr productEndOfLife
Definition: SolvAttr.h:169
static const SolvAttr repositoryTimestamp
Definition: SolvAttr.h:184
static const SolvAttr productProductLine
Definition: SolvAttr.h:163
static const SolvAttr productUrlType
Definition: SolvAttr.h:174
static const SolvAttr conflicts ZYPP_DEPRECATED
Definition: SolvAttr.h:63
static const SolvAttr dep_recommends
Definition: SolvAttr.h:83
int IdType
Generic Id type.
Definition: PoolMember.h:104
static const SolvAttr packager
Definition: SolvAttr.h:113
Access to the sat-pools string space.
Definition: IdString.h:43
static const SolvAttr sourcearch
Definition: SolvAttr.h:119
static const SolvAttr updateReferenceTitle
Definition: SolvAttr.h:145
static const SolvAttr recommends ZYPP_DEPRECATED
Definition: SolvAttr.h:72
Base class for creating IdString based types.
Definition: IdStringType.h:86
static const SolvAttr insnotify
Definition: SolvAttr.h:92
SolvAttr(sat::detail::IdType id_r)
Ctor taking kind as string.
Definition: SolvAttr.h:202
static const SolvAttr icon
Definition: SolvAttr.h:151
static const SolvAttr repositoryAddedFileProvides
Definition: SolvAttr.h:182
static const SolvAttr repositoryRevision
Definition: SolvAttr.h:192
static const SolvAttr productRegisterTarget
Definition: SolvAttr.h:170
static const SolvAttr diskusage
Definition: SolvAttr.h:99
static const SolvAttr enhances ZYPP_DEPRECATED
Definition: SolvAttr.h:75
static const SolvAttr mediafile
Definition: SolvAttr.h:108
static const SolvAttr updateReferenceId
Definition: SolvAttr.h:144
static const SolvAttr sourceevr
Definition: SolvAttr.h:121
Solvable attribute keys.
Definition: SolvAttr.h:40
static const SolvAttr url
Definition: SolvAttr.h:123
static const SolvAttr dep_supplements
Definition: SolvAttr.h:85
static const SolvAttr productDistproduct
Definition: SolvAttr.h:165
static const SolvAttr updateCollection
Definition: SolvAttr.h:135
const Arch Arch_armv7hnl Arch_armv7nhl ZYPP_API
Definition: ResTraits.h:93
static const SolvAttr updateCollectionEvr
Definition: SolvAttr.h:137
SolvAttr()
Default ctor: noAttr.
Definition: SolvAttr.h:199
static const SolvAttr repositoryToolVersion
Definition: SolvAttr.h:193
static const SolvAttr headerend
Definition: SolvAttr.h:122
static const SolvAttr productRegisterFlavor
Definition: SolvAttr.h:172
static const SolvAttr license
Definition: SolvAttr.h:112
static const SolvAttr vendor
Definition: SolvAttr.h:55
static const SolvAttr category
Definition: SolvAttr.h:154
static const SolvAttr severity
Definition: SolvAttr.h:133
static const SolvAttr productType
Definition: SolvAttr.h:167
static const SolvAttr dep_enhances
Definition: SolvAttr.h:86
static const SolvAttr authors
Definition: SolvAttr.h:117
static const SolvAttr obsoletes ZYPP_DEPRECATED
Definition: SolvAttr.h:62
static const SolvAttr name
Definition: SolvAttr.h:52
static const SolvAttr updateStatus
Definition: SolvAttr.h:134
static const SolvAttr buildhost
Definition: SolvAttr.h:110
static const SolvAttr checksum
Definition: SolvAttr.h:105
static const SolvAttr downloadsize
Definition: SolvAttr.h:98
static const SolvAttr message
Definition: SolvAttr.h:132
static const SolvAttr productUrl
Definition: SolvAttr.h:173
static const SolvAttr updateCollectionFilename
Definition: SolvAttr.h:139
static const SolvAttr includes
Definition: SolvAttr.h:156
static const SolvAttr delnotify
Definition: SolvAttr.h:93
static const SolvAttr suggests ZYPP_DEPRECATED
Definition: SolvAttr.h:73
static const SolvAttr noAttr
Value representing noAttr ("")
Definition: SolvAttr.h:48
static const SolvAttr sourcename
Definition: SolvAttr.h:120
static const SolvAttr installsize
Definition: SolvAttr.h:97
static const SolvAttr dep_suggests
Definition: SolvAttr.h:84
static const SolvAttr buildtime
Definition: SolvAttr.h:96
static const SolvAttr patchcategory
Definition: SolvAttr.h:128
static const SolvAttr cpeid
Definition: SolvAttr.h:100
static const SolvAttr productUpdatesRepoid
Definition: SolvAttr.h:176
static const SolvAttr updateReferenceType
Definition: SolvAttr.h:142
SolvAttr(const char *cstr_r)
Definition: SolvAttr.h:205
static const SolvAttr repositoryRepoid
Definition: SolvAttr.h:190
static const SolvAttr description
Definition: SolvAttr.h:91
static const SolvAttr restartSuggested
Definition: SolvAttr.h:130
static const SolvAttr dep_requires
Definition: SolvAttr.h:82
static const SolvAttr sourcesize
Definition: SolvAttr.h:116
SolvAttr(const IdString &idstr_r)
Definition: SolvAttr.h:203
static const SolvAttr keywords
Definition: SolvAttr.h:115
static const SolvAttr reloginSuggested
Definition: SolvAttr.h:131
static const SolvAttr repositoryKeywords
Definition: SolvAttr.h:191
static const SolvAttr provides ZYPP_DEPRECATED
Definition: SolvAttr.h:61
static const SolvAttr repositoryProductCpeid
Definition: SolvAttr.h:189
static const SolvAttr supplements ZYPP_DEPRECATED
Definition: SolvAttr.h:74
static const SolvAttr group
Definition: SolvAttr.h:114
static const SolvAttr dep_conflicts
Definition: SolvAttr.h:81
static const SolvAttr edition
Definition: SolvAttr.h:53
static const SolvAttr filelist
Definition: SolvAttr.h:118
static const SolvAttr updateCollectionName
Definition: SolvAttr.h:136
static const SolvAttr eula
Definition: SolvAttr.h:94
static const SolvAttr summary
Definition: SolvAttr.h:90
static const SolvAttr repositoryRpmDbCookie
Definition: SolvAttr.h:183
static const SolvAttr repositoryDistros
array of repositoryProductLabel repositoryProductCpeid pairs
Definition: SolvAttr.h:187
static const SolvAttr distribution
Definition: SolvAttr.h:111
static const SolvAttr repositoryUpdates
array of repositoryProductLabel repositoryProductCpeid pairs
Definition: SolvAttr.h:186
static const SolvAttr updateCollectionArch
Definition: SolvAttr.h:138
Easy-to use interface to the ZYPP dependency resolver.
Definition: Application.cc:19
static const SolvAttr extends
Definition: SolvAttr.h:157
static const SolvAttr productReferenceFile
Definition: SolvAttr.h:162
static const SolvAttr requires ZYPP_DEPRECATED
Definition: SolvAttr.h:68
bool hasParent() const
Whether this is a well know sub-structure attribute.
Definition: SolvAttr.h:214
static const SolvAttr script
Definition: SolvAttr.h:155
static const SolvAttr rebootSuggested
Definition: SolvAttr.h:129
static const SolvAttr productShortlabel
Definition: SolvAttr.h:164
static const SolvAttr mediadir
Definition: SolvAttr.h:106
static const SolvAttr medianr
Definition: SolvAttr.h:107
static const SolvAttr updateCollectionFlags
Definition: SolvAttr.h:140