libzypp
17.14.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
FileConflicts.h
Go to the documentation of this file.
1
/*---------------------------------------------------------------------\
2
| ____ _ __ __ ___ |
3
| |__ / \ / / . \ . \ |
4
| / / \ V /| _/ _/ |
5
| / /__ | | | | | | |
6
| /_____||_| |_| |_| |
7
| |
8
\---------------------------------------------------------------------*/
11
#ifndef ZYPP_SAT_FILECONFLICTS_H
12
#define ZYPP_SAT_FILECONFLICTS_H
13
14
#include <iosfwd>
15
16
#include "
zypp/base/PtrTypes.h
"
17
#include "
zypp/sat/Queue.h
"
18
#include "
zypp/sat/Solvable.h
"
19
21
namespace
zypp
22
{
24
namespace
sat
25
{
30
class
FileConflicts
:
private
Queue
31
{
32
friend
bool
operator==
(
const
FileConflicts
& lhs,
const
FileConflicts
& rhs );
33
static
constexpr
size_type
queueBlockSize
= 6;
34
35
public
:
40
struct
Conflict
41
{
42
IdString
lhsFilename
()
const
{
return
IdString
(
_data
[0] ); }
43
Solvable
lhsSolvable
()
const
{
return
Solvable
(
_data
[1] ); }
44
IdString
lhsFilemd5
()
const
{
return
IdString
(
_data
[2] ); }
45
46
IdString
rhsFilename
()
const
{
return
IdString
(
_data
[3] ); }
47
Solvable
rhsSolvable
()
const
{
return
Solvable
(
_data
[4] ); }
48
IdString
rhsFilemd5
()
const
{
return
IdString
(
_data
[5] ); }
49
51
std::string
asUserString
()
const
;
52
53
private
:
54
detail::IdType
_data
[
queueBlockSize
];
55
};
56
57
public
:
58
using
Queue::size_type
;
59
typedef
Conflict
value_type
;
60
typedef
const
value_type
*
const_iterator
;
61
62
using
Queue::empty
;
63
size_type
size
()
const
{
return
Queue::size
()/
queueBlockSize
; }
64
const_iterator
begin
()
const
{
return
reinterpret_cast<
const_iterator
>
(
Queue::begin
()); }
65
const_iterator
end
()
const
{
return
reinterpret_cast<
const_iterator
>
(
Queue::end
()); }
66
67
public
:
68
using
Queue::operator
detail::CQueue
*;
69
using
Queue::operator
const
detail::CQueue
*;
70
};
71
73
std::ostream &
operator<<
( std::ostream & str,
const
FileConflicts & obj );
74
76
std::ostream &
operator<<
( std::ostream & str,
const
FileConflicts::Conflict & obj );
77
79
std::ostream &
dumpAsXmlOn
( std::ostream & str,
const
FileConflicts & obj );
80
82
std::ostream &
dumpAsXmlOn
( std::ostream & str,
const
FileConflicts::Conflict & obj );
83
85
inline
bool
operator==
(
const
FileConflicts
& lhs,
const
FileConflicts
& rhs )
86
{
return
static_cast<
const
Queue
&
>
(lhs) == static_cast<const Queue &>(rhs); }
87
89
inline
bool
operator!=
(
const
FileConflicts
& lhs,
const
FileConflicts
& rhs )
90
{
return
!( lhs == rhs ); }
91
92
}
// namespace sat
94
}
// namespace zypp
96
#endif // ZYPP_SAT_FILECONFLICTS_H
zypp
sat
FileConflicts.h
Generated by
1.8.2