GrPPI  0.2
Generic and Reusable Parallel Pattern Interface
Classes | Typedefs | Functions
grppi::internal Namespace Reference

Classes

struct  callable
 
struct  callable_helper
 
struct  callable_helper< R(*)(Args...)>
 
struct  callable_helper< R(Args...)>
 
struct  callable_helper< R(C::*)(Args...) const >
 
struct  callable_helper< R(C::*)(Args...)>
 
struct  identity
 Identity type trait. More...
 

Typedefs

template<int Index, typename... T>
using requires_index_last = std::enable_if_t<(Index==sizeof...(T)-1), int >
 
template<int Index, typename... T>
using requires_index_not_last = std::enable_if_t<(Index< sizeof...(T)-1), int >
 
template<typename E >
using requires_execution_supported = std::enable_if_t< is_supported< E >(), int >
 
template<typename E >
using requires_execution_not_supported = std::enable_if_t<!is_supported< E >(), int >
 

Functions

template<typename T >
constexpr size_t callable_arity ()
 
template<typename F >
constexpr bool has_arguments ()
 

Typedef Documentation

template<typename E >
using grppi::internal::requires_execution_not_supported = typedef std::enable_if_t<!is_supported<E>(), int>
template<typename E >
using grppi::internal::requires_execution_supported = typedef std::enable_if_t<is_supported<E>(), int>
template<int Index, typename... T>
using grppi::internal::requires_index_last = typedef std::enable_if_t<(Index == sizeof...(T) - 1), int>
template<int Index, typename... T>
using grppi::internal::requires_index_not_last = typedef std::enable_if_t<(Index < sizeof...(T) - 1), int>

Function Documentation

template<typename T >
constexpr size_t grppi::internal::callable_arity ( )
template<typename F >
constexpr bool grppi::internal::has_arguments ( )