libzypp  17.3.1
zypp::sat::SolvableSet Class Reference

Solvable set wrapper to allow adding additional convenience iterators. More...

#include <SolvableSet.h>

Inheritance diagram for zypp::sat::SolvableSet:

Public Types

typedef std::unordered_set< SolvableContainer
 
typedef Container::value_type value_type
 
typedef Container::size_type size_type
 
typedef Solvable_iterator const_iterator
 
- Public Types inherited from zypp::sat::SolvIterMixin< SolvableSet, std::unordered_set< Solvable >::const_iterator >
typedef size_t size_type
 
typedef std::unordered_set< Solvable >::const_iterator Solvable_iterator
 
typedef transform_iterator< asPoolItem, Solvable_iteratorPoolItem_iterator
 
typedef transform_iterator< ui::asSelectable, UnifiedSolvable_iteratorSelectable_iterator
 

Public Member Functions

 SolvableSet ()
 Default ctor. More...
 
template<class TInputIterator >
 SolvableSet (TInputIterator begin_r, TInputIterator end_r)
 Ctor building a set from a range. More...
 
bool empty () const
 Whether the set is epmty. More...
 
size_type size () const
 Size of the set. More...
 
template<class TSolv >
bool contains (const TSolv &solv_r) const
 
const_iterator begin () const
 Iterator pointing to the first Solvable. More...
 
const_iterator end () const
 Iterator pointing behind the last Solvable. More...
 
void clear ()
 Clear the container. More...
 
template<class TSolv >
bool insert (const TSolv &solv_r)
 Insert a Solvable. More...
 
template<class TIterator >
void insert (TIterator begin_r, TIterator end_r)
 Insert a range of Solvables. More...
 
Containerget ()
 The set. More...
 
const Containerget () const
 The set. More...
 
- Public Member Functions inherited from zypp::sat::SolvIterMixin< SolvableSet, std::unordered_set< Solvable >::const_iterator >
bool empty () const
 Whether the collection is epmty. More...
 
size_type size () const
 Size of the collection. More...
 
bool contains (const TSolv &solv_r) const
 Whether collection contains a specific Solvable. More...
 
Solvable_iterator solvableBegin () const
 
Solvable_iterator solvableEnd () const
 
Iterable< Solvable_iteratorsolvable () const
 
PoolItem_iterator poolItemBegin () const
 
PoolItem_iterator poolItemEnd () const
 
Iterable< PoolItem_iteratorpoolItem () const
 
Selectable_iterator selectableBegin () const
 
Selectable_iterator selectableEnd () const
 
Iterable< Selectable_iteratorselectable () const
 

Private Attributes

RWCOW_pointer< Container_pimpl
 Pointer to implementation. More...
 

Friends

std::ostream & operator<< (std::ostream &str, const SolvableSet &obj)
 

Related Functions

(Note that these are not member functions.)

std::ostream & operator<< (std::ostream &str, const SolvableSet &obj)
 

Additional Inherited Members

- Protected Member Functions inherited from zypp::sat::SolvIterMixin< SolvableSet, std::unordered_set< Solvable >::const_iterator >
 SolvIterMixin ()
 
 SolvIterMixin (const SolvIterMixin &)
 
 ~SolvIterMixin ()
 
void operator= (const SolvIterMixin &)
 

Detailed Description

Solvable set wrapper to allow adding additional convenience iterators.

Definition at line 35 of file SolvableSet.h.

Member Typedef Documentation

◆ Container

typedef std::unordered_set<Solvable> zypp::sat::SolvableSet::Container

Definition at line 40 of file SolvableSet.h.

◆ value_type

typedef Container::value_type zypp::sat::SolvableSet::value_type

Definition at line 41 of file SolvableSet.h.

◆ size_type

typedef Container::size_type zypp::sat::SolvableSet::size_type

Definition at line 42 of file SolvableSet.h.

◆ const_iterator

Constructor & Destructor Documentation

◆ SolvableSet() [1/2]

zypp::sat::SolvableSet::SolvableSet ( )
inline

Default ctor.

Definition at line 47 of file SolvableSet.h.

◆ SolvableSet() [2/2]

template<class TInputIterator >
zypp::sat::SolvableSet::SolvableSet ( TInputIterator  begin_r,
TInputIterator  end_r 
)
inline

Ctor building a set from a range.

Definition at line 53 of file SolvableSet.h.

Member Function Documentation

◆ empty()

bool zypp::sat::SolvableSet::empty ( ) const
inline

Whether the set is epmty.

Definition at line 59 of file SolvableSet.h.

◆ size()

size_type zypp::sat::SolvableSet::size ( ) const
inline

Size of the set.

Definition at line 63 of file SolvableSet.h.

◆ contains()

template<class TSolv >
bool zypp::sat::SolvableSet::contains ( const TSolv &  solv_r) const
inline

Definition at line 68 of file SolvableSet.h.

◆ begin()

const_iterator zypp::sat::SolvableSet::begin ( ) const
inline

Iterator pointing to the first Solvable.

Definition at line 72 of file SolvableSet.h.

◆ end()

const_iterator zypp::sat::SolvableSet::end ( ) const
inline

Iterator pointing behind the last Solvable.

Definition at line 76 of file SolvableSet.h.

◆ clear()

void zypp::sat::SolvableSet::clear ( )
inline

Clear the container.

Definition at line 81 of file SolvableSet.h.

◆ insert() [1/2]

template<class TSolv >
bool zypp::sat::SolvableSet::insert ( const TSolv &  solv_r)
inline

Insert a Solvable.

Returns
true if it was actually inserted, or false if already present.

Definition at line 88 of file SolvableSet.h.

◆ insert() [2/2]

template<class TIterator >
void zypp::sat::SolvableSet::insert ( TIterator  begin_r,
TIterator  end_r 
)
inline

Insert a range of Solvables.

Definition at line 93 of file SolvableSet.h.

◆ get() [1/2]

Container& zypp::sat::SolvableSet::get ( )
inline

The set.

Definition at line 98 of file SolvableSet.h.

◆ get() [2/2]

const Container& zypp::sat::SolvableSet::get ( ) const
inline

The set.

Definition at line 102 of file SolvableSet.h.

Friends And Related Function Documentation

◆ operator<< [1/2]

std::ostream& operator<< ( std::ostream &  str,
const SolvableSet obj 
)
friend

Definition at line 31 of file SolvableSet.cc.

◆ operator<<() [2/2]

std::ostream & operator<< ( std::ostream &  str,
const SolvableSet obj 
)
related

Stream output

Definition at line 31 of file SolvableSet.cc.

Member Data Documentation

◆ _pimpl

RWCOW_pointer<Container> zypp::sat::SolvableSet::_pimpl
private

Pointer to implementation.

Definition at line 107 of file SolvableSet.h.


The documentation for this class was generated from the following file: