|
| template<typename> |
| constexpr bool | ROOT::Internal::hasBeginEnd (...) |
| template<typename T> |
| constexpr auto | ROOT::Internal::hasBeginEnd (int) -> decltype(std::begin(std::declval< T >()), std::end(std::declval< T >()), true) |
| template<typename T, typename Range_t> |
| RRangeCast< T, true, Range_t > | ROOT::RangeDynCast (Range_t &&coll) |
| | Takes any collection that can be used in range-based loops and applies dynamic_cast<T> to each element.
|
| template<typename T, typename U, std::size_t N> |
| RRangeCast< T, true, std::span< U > > | ROOT::RangeDynCast (U(&arr)[N]) |
| template<typename T, typename Range_t> |
| RRangeCast< T, false, Range_t > | ROOT::RangeStaticCast (Range_t &&coll) |
| | Takes any collection that can be used in range-based loops and applies static_cast<T> to each element.
|
| template<typename T, typename U, std::size_t N> |
| RRangeCast< T, false, std::span< U > > | ROOT::RangeStaticCast (U(&arr)[N]) |