Go to the documentation of this file.
11 #ifndef ZYPP_BASE_ITERABLE_H
12 #define ZYPP_BASE_ITERABLE_H
35 template <
class TIterator>
41 typedef typename std::iterator_traits<iterator_type>::value_type
value_type;
42 typedef typename std::iterator_traits<iterator_type>::difference_type
difference_type;
43 typedef typename std::iterator_traits<iterator_type>::pointer
pointer;
44 typedef typename std::iterator_traits<iterator_type>::reference
reference;
58 Iterable( std::pair<iterator_type,iterator_type> range_r )
60 ,
_end(
std::move(range_r.second) )
87 template <
class TIterator>
89 {
return Iterable<TIterator>( std::forward<TIterator>(begin_r), std::forward<TIterator>(end_r) ); }
92 template <
class TIterator>
97 #endif // ZYPP_BASE_ITERABLE_H
std::iterator_traits< iterator_type >::pointer pointer
Iterable()
Ctor taking the iterator pair.
Iterable< TIterator > makeIterable(std::pair< TIterator, TIterator > &&range_r)
convenient construction.
iterator_type find(const value_type &val_r) const
bool contains(const value_type &val_r) const
iterator_type end() const
std::iterator_traits< iterator_type >::reference reference
Iterable(iterator_type begin_r, iterator_type end_r)
Ctor taking the iterator pair.
Iterable< TIterator > makeIterable(TIterator &&begin_r, TIterator &&end_r)
convenient construction.
iterator_type begin() const
Easy-to use interface to the ZYPP dependency resolver.
std::iterator_traits< iterator_type >::iterator_category iterator_category
std::iterator_traits< iterator_type >::value_type value_type
std::iterator_traits< iterator_type >::difference_type difference_type
Iterable(std::pair< iterator_type, iterator_type > range_r)
Ctor taking the iterator pair.