libzypp 17.37.17
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
22namespace zypp
23{
24namespace sat
25{
26
28 //
29 // CLASS NAME : SolvAttr
30 //
40 class ZYPP_API SolvAttr : public IdStringType<SolvAttr>
41 {
42 public:
45
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
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;
84 static const SolvAttr dep_suggests;
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
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;
175 static const SolvAttr productUpdates; // SUB-STRUCTURE:
176 static const SolvAttr productUpdatesRepoid; // repoid
178
195
197 public:
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
Base class for creating IdString based types.
Access to the sat-pools string space.
Definition IdString.h:44
Solvable attribute keys.
Definition SolvAttr.h:41
static const SolvAttr updateCollectionFlags
Definition SolvAttr.h:140
static const SolvAttr cpeid
Definition SolvAttr.h:100
SolvAttr()
Default ctor: noAttr.
Definition SolvAttr.h:199
SolvAttr(const IdString &idstr_r)
Definition SolvAttr.h:203
static const SolvAttr updateCollectionArch
Definition SolvAttr.h:138
static const SolvAttr buildtime
Definition SolvAttr.h:96
static const SolvAttr diskusage
Definition SolvAttr.h:99
static const SolvAttr productRegisterRelease
Definition SolvAttr.h:171
static const SolvAttr icon
Definition SolvAttr.h:151
static const SolvAttr changelog
Definition SolvAttr.h:109
static const SolvAttr noAttr
Value representing noAttr ("")
Definition SolvAttr.h:48
SolvAttr(sat::detail::IdType id_r)
Ctor taking kind as string.
Definition SolvAttr.h:202
static const SolvAttr
Definition SolvAttr.h:68
static const SolvAttr filelist
Definition SolvAttr.h:118
static const SolvAttr dep_requires
Definition SolvAttr.h:82
static const SolvAttr repositoryDeltaInfo
Definition SolvAttr.h:181
static const SolvAttr updateReferenceId
Definition SolvAttr.h:144
static const SolvAttr productDistversion
Definition SolvAttr.h:166
static const SolvAttr updateReferenceType
Definition SolvAttr.h:142
static const SolvAttr repositoryUpdates
array of repositoryProductLabel repositoryProductCpeid pairs
Definition SolvAttr.h:186
static const SolvAttr name
Definition SolvAttr.h:52
static const SolvAttr repositoryRepoid
Definition SolvAttr.h:190
static const SolvAttr productDistproduct
Definition SolvAttr.h:165
static const SolvAttr distribution
Definition SolvAttr.h:111
static const SolvAttr message
Definition SolvAttr.h:132
static const SolvAttr isvisible
Definition SolvAttr.h:150
static const SolvAttr updateCollectionEvr
Definition SolvAttr.h:137
static const SolvAttr group
Definition SolvAttr.h:114
static const SolvAttr description
Definition SolvAttr.h:91
static const SolvAttr updateReferenceHref
Definition SolvAttr.h:143
static const SolvAttr restartSuggested
Definition SolvAttr.h:130
static const SolvAttr repositoryRevision
Definition SolvAttr.h:192
static const SolvAttr updateCollectionName
Definition SolvAttr.h:136
static const SolvAttr sourceevr
Definition SolvAttr.h:121
static const SolvAttr productUpdatesRepoid
Definition SolvAttr.h:176
static const SolvAttr productProductLine
Definition SolvAttr.h:163
static const SolvAttr category
Definition SolvAttr.h:154
static const SolvAttr productReferenceFile
Definition SolvAttr.h:162
static const SolvAttr productRegisterFlavor
Definition SolvAttr.h:172
static const SolvAttr updateCollection
Definition SolvAttr.h:135
static const SolvAttr rebootSuggested
Definition SolvAttr.h:129
static const SolvAttr repositoryRpmDbCookie
Definition SolvAttr.h:183
static const SolvAttr medianr
Definition SolvAttr.h:107
static const SolvAttr repositoryProductLabel
Definition SolvAttr.h:188
static const SolvAttr provides ZYPP_DEPRECATED
Definition SolvAttr.h:61
SolvAttr(const char *cstr_r)
Definition SolvAttr.h:205
static const SolvAttr repositoryTimestamp
Definition SolvAttr.h:184
static const SolvAttr delnotify
Definition SolvAttr.h:93
static const SolvAttr dep_enhances
Definition SolvAttr.h:86
static const SolvAttr dep_obsoletes
Definition SolvAttr.h:80
static const SolvAttr repositoryAddedFileProvides
Definition SolvAttr.h:182
static const SolvAttr sourcesize
Definition SolvAttr.h:116
static const SolvAttr isdefault
Definition SolvAttr.h:153
static const SolvAttr productType
Definition SolvAttr.h:167
static const SolvAttr updateReferenceTitle
Definition SolvAttr.h:145
static const SolvAttr updateCollectionFilename
Definition SolvAttr.h:139
static const SolvAttr installsize
Definition SolvAttr.h:97
static const SolvAttr packager
Definition SolvAttr.h:113
static const SolvAttr productRegisterTarget
Definition SolvAttr.h:170
static const SolvAttr dep_suggests
Definition SolvAttr.h:84
static const SolvAttr url
Definition SolvAttr.h:123
static const SolvAttr headerend
Definition SolvAttr.h:122
static const SolvAttr downloadsize
Definition SolvAttr.h:98
static const SolvAttr insnotify
Definition SolvAttr.h:92
static const SolvAttr extends
Definition SolvAttr.h:157
static const SolvAttr productUrl
Definition SolvAttr.h:173
static const SolvAttr sourcename
Definition SolvAttr.h:120
static const SolvAttr mediafile
Definition SolvAttr.h:108
SolvAttr(const std::string &str_r)
Definition SolvAttr.h:204
static const SolvAttr edition
Definition SolvAttr.h:53
static const SolvAttr dep_provides
Definition SolvAttr.h:79
static const SolvAttr script
Definition SolvAttr.h:155
static const SolvAttr productUpdates
array of repoids, hopefully label s too
Definition SolvAttr.h:175
static const SolvAttr vendor
Definition SolvAttr.h:55
static const SolvAttr repositoryExpire
Definition SolvAttr.h:185
SolvAttr parent() const
Return the parent of well know sub-structure attributes (SolvAttr::noAttr if none).
Definition SolvAttr.cc:163
bool hasParent() const
Whether this is a well know sub-structure attribute.
Definition SolvAttr.h:214
static const SolvAttr productEndOfLife
Definition SolvAttr.h:169
static const SolvAttr dep_conflicts
Definition SolvAttr.h:81
static const SolvAttr patchcategory
Definition SolvAttr.h:128
static const SolvAttr summary
Definition SolvAttr.h:90
static const SolvAttr order
Definition SolvAttr.h:152
static const SolvAttr checksum
Definition SolvAttr.h:105
static const SolvAttr updateStatus
Definition SolvAttr.h:134
static const SolvAttr mediadir
Definition SolvAttr.h:106
static const SolvAttr repositoryToolVersion
Definition SolvAttr.h:193
static const SolvAttr productFlags
Definition SolvAttr.h:168
static const SolvAttr productShortlabel
Definition SolvAttr.h:164
static const SolvAttr updateReference
Definition SolvAttr.h:141
static const SolvAttr sourcearch
Definition SolvAttr.h:119
static const SolvAttr repositoryProductCpeid
Definition SolvAttr.h:189
static const SolvAttr keywords
Definition SolvAttr.h:115
static const SolvAttr arch
Definition SolvAttr.h:54
static const SolvAttr authors
Definition SolvAttr.h:117
static const SolvAttr license
Definition SolvAttr.h:112
static const SolvAttr allAttr
Value to request searching all Attributes (0).
Definition SolvAttr.h:46
static const SolvAttr includes
Definition SolvAttr.h:156
static const SolvAttr installtime
Definition SolvAttr.h:95
static const SolvAttr buildhost
Definition SolvAttr.h:110
static const SolvAttr severity
Definition SolvAttr.h:133
static const SolvAttr productUrlType
Definition SolvAttr.h:174
static const SolvAttr eula
Definition SolvAttr.h:94
static const SolvAttr repositoryDistros
array of repositoryProductLabel repositoryProductCpeid pairs
Definition SolvAttr.h:187
static const SolvAttr dep_recommends
Definition SolvAttr.h:83
static const SolvAttr reloginSuggested
Definition SolvAttr.h:131
static const SolvAttr repositoryKeywords
Definition SolvAttr.h:191
static const SolvAttr dep_supplements
Definition SolvAttr.h:85
int IdType
Generic Id type.
Definition PoolMember.h:104
Libsolv interface
Easy-to use interface to the ZYPP dependency resolver.
const Arch Arch_armv7hnl Arch_armv7nhl ZYPP_API
Definition Arch.h:247