11#ifndef ZYPP_BASE_ENUMCLASS_H 
   12#define ZYPP_BASE_ENUMCLASS_H 
   46    template<
typename TEnumDef>
 
   47    class EnumClass : 
public TEnumDef
 
   50      using Enum = 
typename TEnumDef::Enum;             
 
   51      using Integral = std::underlying_type_t<Enum>;
 
   53      EnumClass( Enum val_r ) : _val( val_r ) {}
 
   64      Enum asEnum()
 const { 
return _val; }
 
   75      Integral asIntegral()
 const { 
return static_cast<Integral
>(_val); }
 
   77      friend bool operator==( 
const EnumClass & lhs, 
const EnumClass & rhs ) { 
return lhs._val == rhs._val; }
 
   78      friend bool operator!=( 
const EnumClass & lhs, 
const EnumClass & rhs ) { 
return lhs._val != rhs._val; }
 
   79      friend bool operator< ( 
const EnumClass & lhs, 
const EnumClass & rhs ) { 
return lhs._val <  rhs._val; }
 
   80      friend bool operator<=( 
const EnumClass & lhs, 
const EnumClass & rhs ) { 
return lhs._val <= rhs._val; }
 
   81      friend bool operator> ( 
const EnumClass & lhs, 
const EnumClass & rhs ) { 
return lhs._val >  rhs._val; }
 
   82      friend bool operator>=( 
const EnumClass & lhs, 
const EnumClass & rhs ) { 
return lhs._val >= rhs._val; }
 
Easy-to use interface to the ZYPP dependency resolver.
bool operator==(const SetRelation::Enum &lhs, const SetCompare &rhs)
This is an overloaded member function, provided for convenience. It differs from the above function o...
bool operator>=(const IdString &lhs, const char *rhs)
This is an overloaded member function, provided for convenience. It differs from the above function o...
bool operator!=(const SetRelation::Enum &lhs, const SetCompare &rhs)
This is an overloaded member function, provided for convenience. It differs from the above function o...
bool operator<=(const IdString &lhs, const char *rhs)
This is an overloaded member function, provided for convenience. It differs from the above function o...