KaMPIng 0.1.1
Flexible and (near) zero-overhead C++ bindings for MPI
|
A type trait that checks if a type T
is a range, i.e., it has std::begin
and std::end
defined.
More...
#include <traits.hpp>
Static Public Member Functions | |
template<typename S > | |
static auto | test (int) -> decltype(std::begin(std::declval< S >()), std::end(std::declval< S >()), std::true_type{}) |
Only enable this overload if std::begin and std::end are defined for S . | |
template<typename > | |
static auto | test (...) -> std::false_type |
Fallback overload. | |
Static Public Attributes | |
static constexpr bool | value = decltype(test<T>(0))::value |
The value of the trait. | |
A type trait that checks if a type T
is a range, i.e., it has std::begin
and std::end
defined.