|
template<typename T , typename std::enable_if< IsIterable< T >::value, int >::type = 0> |
T::value_type | Dune::max_value (const T &v) |
| compute the maximum value over a range
|
|
template<typename T , typename std::enable_if<!IsIterable< T >::value, int >::type = 0> |
const T & | Dune::max_value (const T &v) |
|
template<typename T , typename std::enable_if< IsIterable< T >::value, int >::type = 0> |
T::value_type | Dune::min_value (const T &v) |
| compute the minimum value over a range
|
|
template<typename T , typename std::enable_if<!IsIterable< T >::value, int >::type = 0> |
const T & | Dune::min_value (const T &v) |
|
template<typename T , typename std::enable_if< IsIterable< T >::value, int >::type = 0> |
bool | Dune::any_true (const T &v) |
| similar to std::bitset<N>::any() return true, if any entries is true
|
|
template<std::size_t N> |
bool | Dune::any_true (const std::bitset< N > &b) |
|
template<typename T , typename std::enable_if< IsIterable< T >::value, int >::type = 0> |
bool | Dune::all_true (const T &v) |
| similar to std::bitset<N>::all() return true, if any entries is true
|
|
template<std::size_t N> |
bool | Dune::all_true (const std::bitset< N > &b) |
|
template<class T , class U , std::enable_if_t< std::is_same< std::decay_t< T >, std::decay_t< U > >::value, int > = 0, std::enable_if_t< std::is_integral< std::decay_t< T > >::value, int > = 0> |
static IntegralRange< std::decay_t< T > > | Dune::range (T &&from, U &&to) noexcept |
| free standing function for setting up a range based for loop over an integer range for (auto i: range(0,10)) // 0,1,2,3,4,5,6,7,8,9 or for (auto i: range(-10,10)) // -10,-9,..,8,9 or for (auto i: range(10)) // 0,1,2,3,4,5,6,7,8,9
|
|
template<class T , std::enable_if_t< std::is_integral< std::decay_t< T > >::value, int > = 0> |
static IntegralRange< std::decay_t< T > > | Dune::range (T &&to) noexcept |
|
template<class T , std::enable_if_t< std::is_enum< std::decay_t< T > >::value, int > = 0> |
static IntegralRange< std::underlying_type_t< std::decay_t< T > > > | Dune::range (T &&to) noexcept |
|
template<class T , T to> |
static StaticIntegralRange< T, to > | Dune::range (std::integral_constant< T, to >) noexcept |
|
template<class R , class F > |
auto | Dune::transformedRangeView (R &&range, const F &f) |
| Create a TransformedRangeView.
|
|
template<class R , class F > |
auto | Dune::iteratorTransformedRangeView (R &&range, const F &f) |
| Create a TransformedRangeView using an iterator transformation.
|
|
template<class Range > |
auto | Dune::sparseRange (Range &&range) |
| Allow structured-binding for-loops for sparse iterators.
|
|
Utilities for reduction like operations on ranges.
- Author
- Christian Engwer