Audacity 3.2.0
|
A convenience for use with range-for. More...
#include <IteratorX.h>
Classes | |
struct | identity |
Public Types | |
using | iterator = Iterator |
using | reverse_iterator = std::reverse_iterator< Iterator > |
Public Member Functions | |
IteratorRange (const Iterator &a, const Iterator &b) | |
IteratorRange (Iterator &&a, Iterator &&b) | |
IteratorRange< reverse_iterator > | reversal () const |
Iterator | begin () const |
Iterator | end () const |
reverse_iterator | rbegin () const |
reverse_iterator | rend () const |
bool | empty () const |
operator bool () const | |
size_t | size () const |
template<typename T > | |
iterator | find (const T &t) const |
template<typename T > | |
long | index (const T &t) const |
template<typename T > | |
bool | contains (const T &t) const |
template<typename F > | |
iterator | find_if (const F &f) const |
template<typename F > | |
long | index_if (const F &f) const |
template<typename F > | |
bool | all_of (const F &f) const |
template<typename F > | |
bool | any_of (const F &f) const |
template<typename F > | |
bool | none_of (const F &f) const |
template<typename R , typename Binary = std::plus< R >, typename Unary = identity< decltype( *std::declval<Iterator>() ) >> | |
R | accumulate (R init, Binary binary_op={}, Unary unary_op={}) const |
template<typename R , typename Binary = std::plus< R >, typename R2 , typename C > | |
R | accumulate (R init, Binary binary_op, R2(C ::*pmf)() const) const |
template<typename Unary = identity< decltype( *std::declval<Iterator>() ) >, typename R = decltype( std::declval<Unary>()( *std::declval<Iterator>() ) )> | |
R | min (Unary unary_op={}) const |
template<typename R2 , typename C , typename R = R2> | |
R | min (R2(C ::*pmf)() const) const |
template<typename Unary = identity< decltype( *std::declval<Iterator>() ) >, typename R = decltype( std::declval<Unary>()( *std::declval<Iterator>() ) )> | |
R | max (Unary unary_op={}) const |
template<typename R2 , typename C , typename R = R2> | |
R | max (R2(C ::*pmf)() const) const |
template<typename Unary = identity< decltype( *std::declval<Iterator>() ) >, typename R = decltype( std::declval<Unary>()( *std::declval<Iterator>() ) )> | |
R | sum (Unary unary_op={}) const |
template<typename R2 , typename C , typename R = R2> | |
R | sum (R2(C ::*pmf)() const) const |
A convenience for use with range-for.
Definition at line 39 of file IteratorX.h.
using IteratorRange< Iterator >::iterator = Iterator |
Definition at line 40 of file IteratorX.h.
using IteratorRange< Iterator >::reverse_iterator = std::reverse_iterator<Iterator> |
Definition at line 41 of file IteratorX.h.
|
inline |
Definition at line 43 of file IteratorX.h.
|
inline |
Definition at line 46 of file IteratorX.h.
|
inline |
Definition at line 131 of file IteratorX.h.
References IteratorRange< Iterator >::accumulate().
|
inline |
Definition at line 112 of file IteratorX.h.
Referenced by IteratorRange< Iterator >::accumulate().
|
inline |
Definition at line 88 of file IteratorX.h.
References IteratorRange< Iterator >::any_of().
|
inline |
Definition at line 96 of file IteratorX.h.
References IteratorRange< Iterator >::end(), and IteratorRange< Iterator >::find_if().
Referenced by IteratorRange< Iterator >::all_of(), and IteratorRange< Iterator >::none_of().
|
inline |
Definition at line 52 of file IteratorX.h.
Referenced by IteratorRange< Iterator >::empty(), IteratorRange< Iterator >::find(), IteratorRange< Iterator >::find_if(), IteratorRange< Iterator >::index(), IteratorRange< Iterator >::index_if(), MixAndRender(), and IteratorRange< Iterator >::size().
|
inline |
Definition at line 73 of file IteratorX.h.
References IteratorRange< Iterator >::end(), and IteratorRange< Iterator >::find().
|
inline |
Definition at line 58 of file IteratorX.h.
References IteratorRange< Iterator >::begin(), and IteratorRange< Iterator >::end().
Referenced by MixAndRender(), and IteratorRange< Iterator >::operator bool().
|
inline |
Definition at line 53 of file IteratorX.h.
Referenced by IteratorRange< Iterator >::any_of(), IteratorRange< Iterator >::contains(), IteratorRange< Iterator >::empty(), IteratorRange< Iterator >::find(), IteratorRange< Iterator >::find_if(), IteratorRange< Iterator >::index(), IteratorRange< Iterator >::index_if(), and IteratorRange< Iterator >::size().
|
inline |
Definition at line 62 of file IteratorX.h.
References IteratorRange< Iterator >::begin(), and IteratorRange< Iterator >::end().
Referenced by IteratorRange< Iterator >::contains(), and IteratorRange< Iterator >::index().
|
inline |
Definition at line 76 of file IteratorX.h.
References IteratorRange< Iterator >::begin(), and IteratorRange< Iterator >::end().
Referenced by IteratorRange< Iterator >::any_of(), and IteratorRange< Iterator >::index_if().
|
inline |
Definition at line 65 of file IteratorX.h.
References IteratorRange< Iterator >::begin(), IteratorRange< Iterator >::end(), and IteratorRange< Iterator >::find().
|
inline |
Definition at line 79 of file IteratorX.h.
References IteratorRange< Iterator >::begin(), IteratorRange< Iterator >::end(), and IteratorRange< Iterator >::find_if().
|
inline |
Definition at line 180 of file IteratorX.h.
References IteratorRange< Iterator >::max().
|
inline |
Definition at line 167 of file IteratorX.h.
Referenced by IteratorRange< Iterator >::max().
|
inline |
Definition at line 158 of file IteratorX.h.
References IteratorRange< Iterator >::min().
|
inline |
Definition at line 145 of file IteratorX.h.
Referenced by IteratorRange< Iterator >::min().
|
inline |
Definition at line 99 of file IteratorX.h.
References IteratorRange< Iterator >::any_of().
|
inlineexplicit |
Definition at line 59 of file IteratorX.h.
References IteratorRange< Iterator >::empty().
|
inline |
Definition at line 55 of file IteratorX.h.
Referenced by IteratorRange< Iterator >::reversal().
|
inline |
Definition at line 56 of file IteratorX.h.
Referenced by IteratorRange< Iterator >::reversal().
|
inline |
Definition at line 49 of file IteratorX.h.
References IteratorRange< Iterator >::rbegin(), and IteratorRange< Iterator >::rend().
|
inline |
Definition at line 60 of file IteratorX.h.
References IteratorRange< Iterator >::begin(), and IteratorRange< Iterator >::end().
|
inline |
Definition at line 202 of file IteratorX.h.
References IteratorRange< Iterator >::sum().
|
inline |
Definition at line 189 of file IteratorX.h.
Referenced by IteratorRange< Iterator >::sum().