libzypp  17.16.0
ResolverProblem.h
Go to the documentation of this file.
1 /*
2  *
3  * Easy-to use interface to the ZYPP dependency resolver
4  *
5  * Author: Stefan Hundhammer <sh@suse.de>
6  *
7  **/
8 
9 #ifndef ZYPP_RESOLVERPROBLEM_H
10 #define ZYPP_RESOLVERPROBLEM_H
11 
12 #include <list>
13 #include <string>
14 #include <vector>
15 
16 #include "zypp/ProblemTypes.h"
17 #include "zypp/ProblemSolution.h"
18 
20 namespace zypp
21 {
27  {
28  public:
32  ResolverProblem( std::string description );
34  ResolverProblem( std::string description, std::string details );
36  ResolverProblem( std::string description, std::string details, std::vector<std::string> &&completeProblemInfo );
37 
40 
41 
45  const std::string & description() const;
46 
51  const std::string & details() const;
52 
56  const std::vector<std::string> & completeProblemInfo() const;
57 
72  const ProblemSolutionList & solutions() const;
73 
74 
78  void setDescription( std::string description );
79 
83  void setDetails( std::string details );
84 
89  void addSolution( ProblemSolution_Ptr solution, bool inFront = false );
90 
91  private:
92  struct Impl;
94  };
95 
97  std::ostream & operator<<( std::ostream &, const ResolverProblem & obj );
98 
100  std::ostream & operator<<( std::ostream &, const ResolverProblemList & obj );
101 
102 
103 } // namespace zypp
105 #endif // ZYPP_RESOLVERPROBLEM_H
106 
std::list< ProblemSolution_Ptr > ProblemSolutionList
Definition: ProblemTypes.h:43
void addSolution(ProblemSolution_Ptr solution, bool inFront=false)
Add a solution to this problem.
~ResolverProblem()
Destructor.
const ProblemSolutionList & solutions() const
Return the possible solutions to this problem.
const std::vector< std::string > & completeProblemInfo() const
Return a one-line description for each problematic rule in the problem tree.
ResolverProblem implementation.
std::list< ResolverProblem_Ptr > ResolverProblemList
Definition: ProblemTypes.h:46
std::ostream & operator<<(std::ostream &str, const Exception &obj)
Definition: Exception.cc:147
void setDetails(std::string details)
Set detail description of the problem.
const std::string & details() const
Return a (possibly muti-line) detailed description of the problem or an empty string if there are no ...
Base class for reference counted objects.
RWCOW_pointer< Impl > _pimpl
Describe a solver problem and offer solutions.
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:1
ResolverProblem()
Constructor.
const std::string & description() const
Return a one-line description of the problem.
void setDescription(std::string description)
Set description of the problem.