libzypp  17.25.0
WhatObsoletes.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
12 #ifndef ZYPP_SAT_WHATOBSOLETES_H
13 #define ZYPP_SAT_WHATOBSOLETES_H
14 
15 #include <iosfwd>
16 #include <vector>
17 
18 #include <zypp/sat/WhatProvides.h>
19 
21 namespace zypp
22 {
23  namespace sat
25  {
26 
28  //
29  // CLASS NAME : WhatObsoletes
30  //
36  class WhatObsoletes : public SolvIterMixin<WhatObsoletes,detail::WhatProvidesIterator>,
37  protected detail::PoolMember
38  {
39  public:
41  typedef unsigned size_type;
42 
43  public:
46  : _begin( 0 )
47  {}
48 
50  explicit
51  WhatObsoletes( Solvable item_r );
52 
54  explicit
55  WhatObsoletes( const PoolItem & item_r );
56 
58  explicit
59  WhatObsoletes( const ResObject_constPtr item_r );
60 
62  template <class TIterator>
63  WhatObsoletes( TIterator begin, TIterator end )
64  : _begin( 0 )
65  {
66  for_( it, begin, end )
67  ctorAdd( *it );
68  ctorDone();
69  }
70 
71  public:
73  bool empty() const
74  { return ! ( _begin && *_begin ); }
75 
77  size_type size() const;
78 
79  public:
81 
84  { return const_iterator( _begin ); }
85 
88  { return const_iterator(); }
89 
90  private:
91  void ctorAdd( const PoolItem & item_r );
92  void ctorAdd( ResObject_constPtr item_r );
93  void ctorAdd( Solvable item_r );
94  void ctorDone();
95 
96  private:
98  shared_ptr<void> _private;
99  };
101 
103  std::ostream & operator<<( std::ostream & str, const WhatObsoletes & obj );
104 
106  } // namespace sat
109 } // namespace zypp
111 #endif // ZYPP_SAT_WHATOBSOLETES_H
zypp::PoolItem
Combining sat::Solvable and ResStatus.
Definition: PoolItem.h:50
zypp::sat::WhatObsoletes::size_type
unsigned size_type
Definition: WhatObsoletes.h:41
zypp::sat::Solvable
A Solvable object within the sat Pool.
Definition: Solvable.h:53
zypp::sat::WhatObsoletes::const_iterator
detail::WhatProvidesIterator const_iterator
Definition: WhatObsoletes.h:80
zypp::sat::WhatObsoletes::WhatObsoletes
WhatObsoletes()
Default ctor.
Definition: WhatObsoletes.h:45
zypp::sat::WhatObsoletes::empty
bool empty() const
Whether the container is empty.
Definition: WhatObsoletes.h:73
zypp::sat::WhatObsoletes::_begin
const sat::detail::IdType * _begin
Definition: WhatObsoletes.h:97
zypp::sat::WhatObsoletes::_private
shared_ptr< void > _private
Definition: WhatObsoletes.h:98
WhatProvides.h
zypp::sat::WhatObsoletes::ctorDone
void ctorDone()
Definition: WhatObsoletes.cc:133
zypp::sat::WhatObsoletes::WhatObsoletes
WhatObsoletes(TIterator begin, TIterator end)
Ctor from a range of Solvable, PoolItem or ResObject::constPtr.
Definition: WhatObsoletes.h:63
zypp::sat::detail::IdType
int IdType
Generic Id type.
Definition: PoolMember.h:104
zypp::sat::operator<<
std::ostream & operator<<(std::ostream &str, const FileConflicts &obj)
Definition: FileConflicts.cc:109
zypp
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:1
zypp::sat::WhatObsoletes::value_type
Solvable value_type
Definition: WhatObsoletes.h:40
zypp::sat::SolvIterMixin
Base class providing common iterator types based on a Solvable iterator.
Definition: SolvIterMixin.h:116
zypp::sat::WhatObsoletes
Container of installed Solvable which would be obsoleted by the Solvable passed to the ctor.
Definition: WhatObsoletes.h:36
zypp::sat::WhatObsoletes::end
const_iterator end() const
Iterator pointing behind the last Solvable.
Definition: WhatObsoletes.h:87
for_
#define for_(IT, BEG, END)
Convenient for-loops using iterator.
Definition: Easy.h:28
zypp::sat::detail::WhatProvidesIterator
WhatProvides iterator.
Definition: WhatProvides.h:146
zypp::sat::detail::PoolMember
Backlink to the associated PoolImpl.
Definition: PoolMember.h:88
zypp::sat::WhatObsoletes::ctorAdd
void ctorAdd(const PoolItem &item_r)
Definition: WhatObsoletes.cc:72
str
String related utilities and Regular expression matching.
zypp::sat::WhatObsoletes::begin
const_iterator begin() const
Iterator pointing to the first Solvable.
Definition: WhatObsoletes.h:83
zypp::sat::WhatObsoletes::size
size_type size() const
Number of solvables inside.
Definition: WhatObsoletes.cc:148