#include <iterator>
#include <type_traits>
Go to the source code of this file.
|
| Traits |
| Contains traits for conveniently exploiting SFINAE.
|
|
|
template<typename If , typename Then , typename Else > |
using | Traits::Conditional = typename std::conditional< If::value, Then, Else >::type |
|
template<typename T > |
using | Traits::Not = Bool<!T::value > |
|
template<typename... Condition> |
using | Traits::EnableIf = typename std::enable_if< All< Condition... >::value, Detail::Enabler >::type |
|
template<typename... Condition> |
using | Traits::DisableIf = typename std::enable_if<!All< Condition... >::value, Detail::Enabler >::type |
|
template<typename... Condition> |
using | Traits::EnableIfAny = typename std::enable_if< Any< Condition... >::value, Detail::Enabler >::type |
|
template<typename... Condition> |
using | Traits::DisableIfAny = typename std::enable_if<!Any< Condition... >::value, Detail::Enabler >::type |
|
template<typename T > |
using | Traits::IsIteratable = decltype(Detail::isIteratableImpl< T >(0)) |
|