libzypp  17.25.2
Dep.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
12 #ifndef ZYPP_DEP_H
13 #define ZYPP_DEP_H
14 
15 #include <iosfwd>
16 #include <string>
17 
19 namespace zypp
20 {
21 
23  //
24  // CLASS NAME : Dep
25  //
29  struct Dep
30  {
31  friend bool operator==( const Dep & lhs, const Dep & rhs );
32  friend bool operator!=( const Dep & lhs, const Dep & rhs );
34  friend bool operator<( const Dep & lhs, const Dep & rhs );
35 
42  static const Dep PROVIDES;
43  static const Dep PREREQUIRES;
44  static const Dep REQUIRES;
45  static const Dep CONFLICTS;
46  static const Dep OBSOLETES;
47  static const Dep RECOMMENDS;
48  static const Dep SUGGESTS;
49  static const Dep ENHANCES;
50  static const Dep SUPPLEMENTS;
52 
66  };
67 
75  explicit
76  Dep( const std::string & strval_r );
77 
81  const std::string & asString() const;
82 
86  std::string asUserString() const;
87 
90  { return _type; }
91 
92  private:
95  : _type( type_r )
96  {}
99  };
101 
103  inline std::ostream & operator<<( std::ostream & str, const Dep & obj )
104  { return str << obj.asString(); }
105 
107 
109  inline bool operator==( const Dep & lhs, const Dep & rhs )
110  { return lhs._type == rhs._type; }
111 
113  inline bool operator!=( const Dep & lhs, const Dep & rhs )
114  { return lhs._type != rhs._type; }
115 
117  inline bool operator<( const Dep & lhs, const Dep & rhs )
118  { return lhs._type < rhs._type; }
119 
121 } // namespace zypp
123 #endif // ZYPP_DEP_H
zypp::Dep::SUPPLEMENTS
static const Dep SUPPLEMENTS
Definition: Dep.h:50
zypp::Dep::SUPPLEMENTS_e
@ SUPPLEMENTS_e
Definition: Dep.h:65
zypp::Dep::Dep
Dep(for_use_in_switch type_r)
Ctor to initialize the dependency type contants.
Definition: Dep.h:94
zypp::Dep::ENHANCES
static const Dep ENHANCES
Definition: Dep.h:49
zypp::Dep::RECOMMENDS_e
@ RECOMMENDS_e
Definition: Dep.h:62
zypp::Dep::asUserString
std::string asUserString() const
Translated dependency type (capitalized).
Definition: Dep.cc:92
zypp::Dep::operator!=
friend bool operator!=(const Dep &lhs, const Dep &rhs)
zypp::Dep::for_use_in_switch
for_use_in_switch
Enumarators provided only for use inSwitch statement.
Definition: Dep.h:56
zypp::Dep::_type
for_use_in_switch _type
The operator.
Definition: Dep.h:98
zypp::Dep::REQUIRES
static const Dep REQUIRES
Definition: Dep.h:44
zypp::Dep::PREREQUIRES
static const Dep PREREQUIRES
Definition: Dep.h:43
zypp::Dep::operator<<
std::ostream & operator<<(std::ostream &str, const Dep &obj)
Stream output.
Definition: Dep.h:103
zypp::Dep::OBSOLETES_e
@ OBSOLETES_e
Definition: Dep.h:61
zypp::Dep::REQUIRES_e
@ REQUIRES_e
Definition: Dep.h:59
zypp::Dep::operator<
friend bool operator<(const Dep &lhs, const Dep &rhs)
Arbitrary order to allow Dep as key in std::container.
zypp::Dep::SUGGESTS
static const Dep SUGGESTS
Definition: Dep.h:48
zypp::Dep::PROVIDES_e
@ PROVIDES_e
Definition: Dep.h:57
zypp
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:2
zypp::Dep::RECOMMENDS
static const Dep RECOMMENDS
Definition: Dep.h:47
zypp::Dep::ENHANCES_e
@ ENHANCES_e
Definition: Dep.h:64
zypp::Dep::OBSOLETES
static const Dep OBSOLETES
Definition: Dep.h:46
zypp::Dep::asString
const std::string & asString() const
String representation of dependency type.
Definition: Dep.cc:76
zypp::Dep::CONFLICTS
static const Dep CONFLICTS
Definition: Dep.h:45
zypp::Dep::PROVIDES
static const Dep PROVIDES
Definition: Dep.h:42
zypp::Dep::Dep
Dep(const std::string &strval_r)
Ctor from string.
Definition: Dep.cc:67
zypp::Dep::CONFLICTS_e
@ CONFLICTS_e
Definition: Dep.h:60
zypp::Dep::PREREQUIRES_e
@ PREREQUIRES_e
Definition: Dep.h:58
zypp::Dep::inSwitch
for_use_in_switch inSwitch() const
Enumarator provided for use in switch statement.
Definition: Dep.h:89
str
String related utilities and Regular expression matching.
zypp::Dep::SUGGESTS_e
@ SUGGESTS_e
Definition: Dep.h:63
zypp::Dep
Enumeration class of dependency types.
Definition: Dep.h:30
zypp::Dep::operator==
friend bool operator==(const Dep &lhs, const Dep &rhs)