12 #ifndef ZYPP_SAT_IDSTR_H
13 #define ZYPP_SAT_IDSTR_H
18 #include <boost/utility/string_ref_fwd.hpp>
54 explicit IdString(
const char * str_r );
57 IdString(
const char * str_r,
unsigned len_r );
60 explicit IdString(
const std::string & str_r );
63 explicit IdString( boost::string_ref str_r );
74 constexpr
explicit operator bool()
const
84 unsigned size()
const;
88 const char *
c_str()
const;
95 explicit operator std::string()
const
101 {
return(
_id == rhs.
id() ); }
107 int compare(
const char * rhs )
const;
111 {
return compare( rhs.c_str() ); }
127 std::ostream &
dumpOn( std::ostream & str,
const IdString & obj );
134 {
return lhs.
compare( rhs ) == 0; }
137 {
return lhs.
compare( rhs ) == 0; }
140 {
return rhs.
compare( lhs ) == 0; }
143 {
return rhs.
compare( lhs ) == 0; }
150 {
return lhs.
compare( rhs ) != 0; }
153 {
return lhs.
compare( rhs ) != 0; }
156 {
return rhs.
compare( lhs ) != 0; }
159 {
return rhs.
compare( lhs ) != 0; }
163 {
return lhs.
compare( rhs ) < 0; }
166 {
return lhs.
compare( rhs ) < 0; }
169 {
return lhs.
compare( rhs ) < 0; }
172 {
return rhs.
compare( lhs ) >= 0; }
175 {
return rhs.
compare( lhs ) >= 0; }
179 {
return lhs.
compare( rhs ) <= 0; }
182 {
return lhs.
compare( rhs ) <= 0; }
185 {
return lhs.
compare( rhs ) <= 0; }
188 {
return rhs.
compare( lhs ) > 0; }
191 {
return rhs.
compare( lhs ) > 0; }
195 {
return lhs.
compare( rhs ) > 0; }
198 {
return lhs.
compare( rhs ) > 0; }
201 {
return lhs.
compare( rhs ) > 0; }
204 {
return rhs.
compare( lhs ) <= 0; }
207 {
return rhs.
compare( lhs ) <= 0; }
211 {
return lhs.
compare( rhs ) >= 0; }
214 {
return lhs.
compare( rhs ) >= 0; }
217 {
return lhs.
compare( rhs ) >= 0; }
220 {
return rhs.
compare( lhs ) < 0; }
223 {
return rhs.
compare( lhs ) < 0; }
231 #endif // ZYPP_SAT_IDSTR_H
int IdType
Generic Id type.
IdType id() const
Expert backdoor.
Access to the sat-pools string space.
bool operator==(const SetRelation::Enum &lhs, const SetCompare &rhs)
std::string asString() const
Conversion to std::string
constexpr IdString()
Default ctor, empty string.
static const IdString Empty
Empty string.
Backlink to the associated PoolImpl.
static const IdType emptyId(1)
std::ostream & operator<<(std::ostream &str, const Exception &obj)
std::unordered_set< IdString > IdStringSet
sat::detail::IdType IdType
bool operator==(const IdString &lhs, const IdString &rhs)
int compare(const std::string &rhs) const
bool operator>=(const IdString &lhs, const IdString &rhs)
ZYPP_DEFINE_ID_HASHABLE(::zypp::IdString)
bool compareEQ(const IdString &rhs) const
Fast compare equal.
bool operator>(const IdString &lhs, const IdString &rhs)
bool operator<(const IdString &lhs, const IdString &rhs)
bool operator>=(const IdString &lhs, const char *rhs)
std::ostream & dumpOn(std::ostream &str, const Capability &obj)
const char * c_str() const
Conversion to const char *
constexpr bool empty() const
Whether the string is empty.
bool operator>(const IdString &lhs, const char *rhs)
bool operator!=(const IdString &lhs, const IdString &rhs)
bool operator!=(const SetRelation::Enum &lhs, const SetCompare &rhs)
int compare(const IdString &rhs) const
Compare IdString returning -1,0,1.
static const IdString Null
No or Null string ( Id 0 ).
static const IdType noId(0)
constexpr IdString(IdType id_r)
Ctor from id.
unsigned size() const
The strings size.
bool operator<(const StrMatcher &lhs, const StrMatcher &rhs)
bool operator<=(const IdString &lhs, const IdString &rhs)
bool operator<=(const IdString &lhs, const char *rhs)