Belle II Software development
|
A pair of iterators usable with the range base for loop. More...
#include <SortedRange.h>
Public Types | |
using | Iterator = AIterator |
Iterator type of the range. | |
using | Reference = typename std::iterator_traits< AIterator >::reference |
The type the iterator references. | |
using | iterator = Iterator |
Iterator definition for stl. | |
using | value_type = typename std::iterator_traits< AIterator >::value_type |
The type behind the iterator (make it possible to use the range as a "list") | |
Public Member Functions | |
template<class AOtherIterator > | |
SortedRange (const std::pair< AOtherIterator, AOtherIterator > &itPair) | |
Constructor to adapt a pair as returned by e.g. std::equal_range. | |
template<class Ts , class ItT = GetIterator<Ts>> | |
SortedRange (const Ts &ts) | |
Constructor from another range. | |
template<class T > | |
SortedRange< AIterator > | equal_range (const T &t) const |
Access to a sub range to mimic the behaviour of a sorted container. | |
template<class T > | |
SortedRange< AIterator > | upper_bound (const T &t) const |
Access to a upper bound to mimic the behaviour of a sorted container. | |
template<class T > | |
SortedRange< AIterator > | lowers_bound (const T &t) const |
Access to a lower bound to mimic the behaviour of a sorted container. | |
bool | count (Reference t) const |
Counts the number of equivalent items in the range. | |
Iterator | begin () const |
Begin of the range for range based for. | |
Iterator | end () const |
End of the range for range based for. | |
bool | empty () const |
Checks if the begin equals the end iterator, hence if the range is empty. | |
std::size_t | size () const |
Returns the total number of objects in this range. | |
Reference | front () const |
Returns the dereferenced iterator at begin() | |
Reference | back () const |
Returns the dereferenced iterator before end() | |
Reference | operator[] (std::size_t i) const |
Returns the object at index i. | |
Reference | at (std::size_t i) const |
Returns the object at index i. | |
bool | count (Reference t) |
Counts the number of equivalent items in the range. | |
Private Types | |
using | Super = Range< AIterator > |
Type of the base class. | |
A pair of iterators usable with the range base for loop.
Definition at line 25 of file SortedRange.h.
using Iterator = AIterator |
Iterator type of the range.
Definition at line 33 of file SortedRange.h.
using Reference = typename std::iterator_traits<AIterator>::reference |
The type the iterator references.
Definition at line 36 of file SortedRange.h.
Type of the base class.
Definition at line 29 of file SortedRange.h.
|
inherited |
|
inlineexplicit |
Constructor to adapt a pair as returned by e.g. std::equal_range.
Definition at line 41 of file SortedRange.h.
|
inlineexplicit |
Constructor from another range.
Definition at line 47 of file SortedRange.h.
|
inlineinherited |
Returns the object at index i.
Definition at line 92 of file Range.h.
|
inlineinherited |
Returns the dereferenced iterator before end()
Definition at line 84 of file Range.h.
|
inlineinherited |
|
inlineinherited |
Counts the number of equivalent items in the range.
Definition at line 101 of file Range.h.
|
inline |
Counts the number of equivalent items in the range.
Definition at line 70 of file SortedRange.h.
|
inlineinherited |
|
inlineinherited |
|
inline |
Access to a sub range to mimic the behaviour of a sorted container.
Definition at line 56 of file SortedRange.h.
|
inlineinherited |
|
inline |
Access to a lower bound to mimic the behaviour of a sorted container.
Definition at line 66 of file SortedRange.h.
|
inlineinherited |
|
inlineinherited |
|
inline |
Access to a upper bound to mimic the behaviour of a sorted container.
Definition at line 61 of file SortedRange.h.