libzypp 17.31.23
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 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
60 static const SolvAttr provides;
61 static const SolvAttr obsoletes;
62 static const SolvAttr conflicts;
63#if __GNUC__ >= 10
64#pragma GCC diagnostic push
65#pragma GCC diagnostic ignored "-Wc++20-compat"
66#endif
67 static const SolvAttr requires;
68#if __GNUC__ >= 10
69#pragma GCC diagnostic pop
70#endif
71 static const SolvAttr recommends;
72 static const SolvAttr suggests;
73 static const SolvAttr supplements;
74 static const SolvAttr enhances;
75
78 static const SolvAttr summary;
79 static const SolvAttr description;
80 static const SolvAttr insnotify;
81 static const SolvAttr delnotify;
82 static const SolvAttr eula;
83 static const SolvAttr installtime;
84 static const SolvAttr buildtime;
85 static const SolvAttr installsize;
86 static const SolvAttr downloadsize;
87 static const SolvAttr diskusage;
88 static const SolvAttr cpeid;
90
93 static const SolvAttr checksum;
94 static const SolvAttr mediadir;
95 static const SolvAttr medianr;
96 static const SolvAttr mediafile;
97 static const SolvAttr changelog;
98 static const SolvAttr buildhost;
99 static const SolvAttr distribution;
100 static const SolvAttr license;
101 static const SolvAttr packager;
102 static const SolvAttr group;
103 static const SolvAttr keywords;
104 static const SolvAttr sourcesize;
105 static const SolvAttr authors;
106 static const SolvAttr filelist;
107 static const SolvAttr sourcearch;
108 static const SolvAttr sourcename;
109 static const SolvAttr sourceevr;
110 static const SolvAttr headerend;
111 static const SolvAttr url;
113
120 static const SolvAttr message;
121 static const SolvAttr severity;
122 static const SolvAttr updateStatus; // "retracted", "stable",...
123 static const SolvAttr updateCollection; // SUB-STRUCTURE:
124 static const SolvAttr updateCollectionName; // name
125 static const SolvAttr updateCollectionEvr; // evr
126 static const SolvAttr updateCollectionArch; // arch
127 static const SolvAttr updateCollectionFilename; // filename
128 static const SolvAttr updateCollectionFlags; // flags
129 static const SolvAttr updateReference; // SUB-STRUCTURE:
130 static const SolvAttr updateReferenceType; // type
131 static const SolvAttr updateReferenceHref; // href
132 static const SolvAttr updateReferenceId; // id
133 static const SolvAttr updateReferenceTitle; // title
135
138 static const SolvAttr isvisible;
139 static const SolvAttr icon;
140 static const SolvAttr order;
141 static const SolvAttr isdefault;
142 static const SolvAttr category;
143 static const SolvAttr script;
144 static const SolvAttr includes;
145 static const SolvAttr extends;
147
155 static const SolvAttr productType;
156 static const SolvAttr productFlags;
161 static const SolvAttr productUrl;
163 static const SolvAttr productUpdates; // SUB-STRUCTURE:
164 static const SolvAttr productUpdatesRepoid; // repoid
166
183
185 public:
188
190 explicit SolvAttr( sat::detail::IdType id_r ) : _str( id_r ) {}
191 explicit SolvAttr( const IdString & idstr_r ) : _str( idstr_r ) {}
192 explicit SolvAttr( const std::string & str_r ) : _str( str_r ) {}
193 explicit SolvAttr( const char * cstr_r ) : _str( cstr_r ) {}
194
199 SolvAttr parent() const;
200
202 bool hasParent() const
203 { return parent() != noAttr; }
204
205 private:
206 friend class IdStringType<SolvAttr>;
208 };
209
211} // namespace sat
212} // namespace zypp
214#endif // ZYPP_sat_SolvAttr_H
Base class for creating IdString based types.
Definition: IdStringType.h:87
Access to the sat-pools string space.
Definition: IdString.h:43
Solvable attribute keys.
Definition: SolvAttr.h:41
static const SolvAttr updateCollectionFlags
Definition: SolvAttr.h:128
static const SolvAttr cpeid
Definition: SolvAttr.h:88
SolvAttr()
Default ctor: noAttr.
Definition: SolvAttr.h:187
SolvAttr(const IdString &idstr_r)
Definition: SolvAttr.h:191
static const SolvAttr updateCollectionArch
Definition: SolvAttr.h:126
static const SolvAttr buildtime
Definition: SolvAttr.h:84
static const SolvAttr supplements
Definition: SolvAttr.h:73
static const SolvAttr diskusage
Definition: SolvAttr.h:87
static const SolvAttr productRegisterRelease
Definition: SolvAttr.h:159
static const SolvAttr icon
Definition: SolvAttr.h:139
static const SolvAttr changelog
Definition: SolvAttr.h:97
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:190
static const SolvAttr filelist
Definition: SolvAttr.h:106
static const SolvAttr repositoryDeltaInfo
Definition: SolvAttr.h:169
static const SolvAttr obsoletes
Definition: SolvAttr.h:61
static const SolvAttr updateReferenceId
Definition: SolvAttr.h:132
static const SolvAttr productDistversion
Definition: SolvAttr.h:154
static const SolvAttr updateReferenceType
Definition: SolvAttr.h:130
static const SolvAttr repositoryUpdates
array of repositoryProductLabel repositoryProductCpeid pairs
Definition: SolvAttr.h:174
static const SolvAttr name
Definition: SolvAttr.h:52
static const SolvAttr repositoryRepoid
Definition: SolvAttr.h:178
static const SolvAttr productDistproduct
Definition: SolvAttr.h:153
static const SolvAttr distribution
Definition: SolvAttr.h:99
static const SolvAttr message
Definition: SolvAttr.h:120
static const SolvAttr suggests
Definition: SolvAttr.h:72
static const SolvAttr isvisible
Definition: SolvAttr.h:138
static const SolvAttr updateCollectionEvr
Definition: SolvAttr.h:125
static const SolvAttr group
Definition: SolvAttr.h:102
static const SolvAttr description
Definition: SolvAttr.h:79
static const SolvAttr updateReferenceHref
Definition: SolvAttr.h:131
static const SolvAttr restartSuggested
Definition: SolvAttr.h:118
static const SolvAttr repositoryRevision
Definition: SolvAttr.h:180
static const SolvAttr updateCollectionName
Definition: SolvAttr.h:124
static const SolvAttr sourceevr
Definition: SolvAttr.h:109
static const SolvAttr productUpdatesRepoid
Definition: SolvAttr.h:164
static const SolvAttr productProductLine
Definition: SolvAttr.h:151
static const SolvAttr category
Definition: SolvAttr.h:142
static const SolvAttr productReferenceFile
Definition: SolvAttr.h:150
static const SolvAttr productRegisterFlavor
Definition: SolvAttr.h:160
static const SolvAttr updateCollection
Definition: SolvAttr.h:123
static const SolvAttr rebootSuggested
Definition: SolvAttr.h:117
static const SolvAttr repositoryRpmDbCookie
Definition: SolvAttr.h:171
static const SolvAttr medianr
Definition: SolvAttr.h:95
static const SolvAttr repositoryProductLabel
Definition: SolvAttr.h:176
SolvAttr(const char *cstr_r)
Definition: SolvAttr.h:193
static const SolvAttr repositoryTimestamp
Definition: SolvAttr.h:172
static const SolvAttr delnotify
Definition: SolvAttr.h:81
static const SolvAttr repositoryAddedFileProvides
Definition: SolvAttr.h:170
static const SolvAttr sourcesize
Definition: SolvAttr.h:104
static const SolvAttr isdefault
Definition: SolvAttr.h:141
static const SolvAttr productType
Definition: SolvAttr.h:155
static const SolvAttr updateReferenceTitle
Definition: SolvAttr.h:133
static const SolvAttr updateCollectionFilename
Definition: SolvAttr.h:127
static const SolvAttr installsize
Definition: SolvAttr.h:85
static const SolvAttr packager
Definition: SolvAttr.h:101
static const SolvAttr productRegisterTarget
Definition: SolvAttr.h:158
static const SolvAttr conflicts
Definition: SolvAttr.h:62
static const SolvAttr url
Definition: SolvAttr.h:111
static const SolvAttr headerend
Definition: SolvAttr.h:110
static const SolvAttr downloadsize
Definition: SolvAttr.h:86
static const SolvAttr insnotify
Definition: SolvAttr.h:80
static const SolvAttr extends
Definition: SolvAttr.h:145
static const SolvAttr productUrl
Definition: SolvAttr.h:161
static const SolvAttr sourcename
Definition: SolvAttr.h:108
static const SolvAttr mediafile
Definition: SolvAttr.h:96
SolvAttr(const std::string &str_r)
Definition: SolvAttr.h:192
static const SolvAttr edition
Definition: SolvAttr.h:53
static const SolvAttr script
Definition: SolvAttr.h:143
static const SolvAttr productUpdates
array of repoids, hopefully label s too
Definition: SolvAttr.h:163
static const SolvAttr vendor
Definition: SolvAttr.h:55
static const SolvAttr repositoryExpire
Definition: SolvAttr.h:173
SolvAttr parent() const
Return the parent of well know sub-structure attributes (SolvAttr::noAttr if none).
Definition: SolvAttr.cc:152
bool hasParent() const
Whether this is a well know sub-structure attribute.
Definition: SolvAttr.h:202
static const SolvAttr productEndOfLife
Definition: SolvAttr.h:157
static const SolvAttr patchcategory
Definition: SolvAttr.h:116
static const SolvAttr summary
Definition: SolvAttr.h:78
static const SolvAttr order
Definition: SolvAttr.h:140
static const SolvAttr checksum
Definition: SolvAttr.h:93
static const SolvAttr updateStatus
Definition: SolvAttr.h:122
static const SolvAttr mediadir
Definition: SolvAttr.h:94
static const SolvAttr repositoryToolVersion
Definition: SolvAttr.h:181
static const SolvAttr productFlags
Definition: SolvAttr.h:156
static const SolvAttr recommends
Definition: SolvAttr.h:71
static const SolvAttr productShortlabel
Definition: SolvAttr.h:152
static const SolvAttr updateReference
Definition: SolvAttr.h:129
static const SolvAttr sourcearch
Definition: SolvAttr.h:107
static const SolvAttr repositoryProductCpeid
Definition: SolvAttr.h:177
static const SolvAttr keywords
Definition: SolvAttr.h:103
static const SolvAttr arch
Definition: SolvAttr.h:54
static const SolvAttr authors
Definition: SolvAttr.h:105
static const SolvAttr license
Definition: SolvAttr.h:100
static const SolvAttr allAttr
Value to request searching all Attributes (0).
Definition: SolvAttr.h:46
static const SolvAttr includes
Definition: SolvAttr.h:144
static const SolvAttr enhances
Definition: SolvAttr.h:74
static const SolvAttr installtime
Definition: SolvAttr.h:83
static const SolvAttr buildhost
Definition: SolvAttr.h:98
static const SolvAttr severity
Definition: SolvAttr.h:121
static const SolvAttr productUrlType
Definition: SolvAttr.h:162
static const SolvAttr eula
Definition: SolvAttr.h:82
static const SolvAttr repositoryDistros
array of repositoryProductLabel repositoryProductCpeid pairs
Definition: SolvAttr.h:175
static const SolvAttr reloginSuggested
Definition: SolvAttr.h:119
static const SolvAttr provides
Definition: SolvAttr.h:60
static const SolvAttr repositoryKeywords
Definition: SolvAttr.h:179
int IdType
Generic Id type.
Definition: PoolMember.h:104
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:2