libzypp  17.24.1
ResolverNamespace.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
11 #ifndef ZYPP_RESOLVERNAMESPACE_H
12 #define ZYPP_RESOLVERNAMESPACE_H
13 
14 #include <iosfwd>
15 #include <cstdint>
16 
17 #include <zypp/base/Flags.h>
18 #include <zypp/IdString.h>
19 
21 namespace zypp
22 {
24  enum class ResolverNamespace : std::uint8_t
25  {
26  language = 1<<0,
27  modalias = 1<<1,
28  filesystem = 1<<2,
29  };
30 
33 
35  static constexpr const ResolverNamespaces NoResolverNamespaces = ResolverNamespace();
36 
38  static constexpr const ResolverNamespaces AllResolverNamespaces = ResolverNamespace(0xff);
39 
41  inline constexpr IdString asIdString( ResolverNamespace obj )
42  {
47  }
48 
50  inline std::string asString( ResolverNamespace obj )
51  { return asIdString( obj ).asString(); }
52 
54  inline std::ostream & operator<<( std::ostream & str, ResolverNamespace obj )
55  { return str << asIdString( obj ); }
56 
58  inline std::ostream & operator<<( std::ostream & str, ResolverNamespaces obj )
59  {
60  return str << stringify( obj, {
61  { ResolverNamespace::language, "language" },
62  { ResolverNamespace::modalias, "modalias" },
63  { ResolverNamespace::filesystem, "filesystem" },
64  }, "namespace:", "|", "" );
65  }
66 
67 } // namespace zypp
69 #endif // ZYPP_RESOLVERNAMESPACE_H
zypp::ResolverNamespace::filesystem
filesystems
zypp::sat::detail::noId
static const IdType noId(0)
zypp::sat::detail::namespaceLanguage
static const IdType namespaceLanguage(20)
zypp::sat::detail::namespaceModalias
static const IdType namespaceModalias(18)
zypp::ResolverNamespace::language
language support
zypp::ResolverNamespace::modalias
hardware support
zypp::ResolverNamespace
ResolverNamespace
The resolvers dependency namespaces.
Definition: ResolverNamespace.h:24
IdString.h
zypp
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:1
ZYPP_DECLARE_FLAGS_AND_OPERATORS
#define ZYPP_DECLARE_FLAGS_AND_OPERATORS(Name, Enum)
Definition: Flags.h:189
zypp::asString
std::string asString(const DefaultIntegral< Tp, TInitial > &obj)
Definition: DefaultIntegral.h:98
zypp::operator<<
std::ostream & operator<<(std::ostream &str, const Exception &obj)
Definition: Exception.cc:147
Flags.h
str
String related utilities and Regular expression matching.
AllResolverNamespaces
static constexpr const ResolverNamespaces AllResolverNamespaces
Definition: ResolverNamespace.h:38
NoResolverNamespaces
static constexpr const ResolverNamespaces NoResolverNamespaces
Definition: ResolverNamespace.h:35
zypp::sat::detail::namespaceFilesystem
static const IdType namespaceFilesystem(21)