Hydra  4.0.1
A header-only templated C++ framework to perform data analysis on massively parallel platforms.
FunctorTraits.h File Reference
#include <hydra/detail/Config.h>
#include <hydra/detail/utility/StaticAssert.h>
#include <hydra/detail/external/hydra_thrust/tuple.h>
#include <hydra/detail/external/hydra_thrust/type_traits/void_t.h>
#include <utility>
#include <type_traits>
Include dependency graph for FunctorTraits.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  hydra::detail::functor_traits< T >
 
struct  hydra::detail::functor_traits< ReturnType(ClassType::*)(Args...) >
 
struct  hydra::detail::functor_traits< ReturnType(ClassType::*)(Args...) const >
 
struct  hydra::detail::is_hydra_functor< Functor, T >
 
struct  hydra::detail::is_hydra_functor< Functor, hydra::thrust::void_t< typename Functor::hydra_functor_type, typename Functor::argument_type, typename Functor::return_type > >
 
struct  hydra::detail::is_hydra_lambda< Functor, T >
 
struct  hydra::detail::is_hydra_lambda< Functor, hydra::thrust::void_t< typename Functor::hydra_lambda_type, typename Functor::argument_type, typename Functor::return_type > >
 
struct  hydra::detail::lambda_traits< T >
 
struct  hydra::detail::signature_traits< S >
 
struct  hydra::detail::signature_traits< hydra::thrust::tuple< R, Args... > >
 
struct  hydra::detail::signature_traits< R(Args...)>
 
struct  hydra::detail::signature_type< R, A >
 
struct  hydra::detail::signature_type_impl< T >
 
struct  hydra::detail::trimmed_lambda_signature< T >
 
struct  hydra::detail::trimmed_lambda_signature< hydra::thrust::tuple< Head, Neck, Tail... > >
 

Namespaces

 hydra
 Generic policies definition.
 
 hydra::detail
 

Data Structure Documentation

◆ hydra::detail::functor_traits

struct hydra::detail::functor_traits

template<typename T>
struct hydra::detail::functor_traits< T >

Inheritance diagram for hydra::detail::functor_traits< T >:
Collaboration diagram for hydra::detail::functor_traits< T >:

◆ hydra::detail::functor_traits< ReturnType(ClassType::*)(Args...) >

struct hydra::detail::functor_traits< ReturnType(ClassType::*)(Args...) >

template<typename ClassType, typename ReturnType, typename... Args>
struct hydra::detail::functor_traits< ReturnType(ClassType::*)(Args...) >

Collaboration diagram for hydra::detail::functor_traits< ReturnType(ClassType::*)(Args...) >:

◆ hydra::detail::signature_traits

struct hydra::detail::signature_traits

template<typename S>
struct hydra::detail::signature_traits< S >

Collaboration diagram for hydra::detail::signature_traits< S >:

◆ hydra::detail::signature_type

struct hydra::detail::signature_type

template<typename R, typename ... A>
struct hydra::detail::signature_type< R, A >

Collaboration diagram for hydra::detail::signature_type< R, A >:
Data Fields
type

◆ hydra::detail::signature_type_impl

struct hydra::detail::signature_type_impl

template<typename T>
struct hydra::detail::signature_type_impl< T >

Collaboration diagram for hydra::detail::signature_type_impl< T >:
Data Fields
typedef T type

◆ hydra::detail::trimmed_lambda_signature

struct hydra::detail::trimmed_lambda_signature

template<typename T>
struct hydra::detail::trimmed_lambda_signature< T >

Collaboration diagram for hydra::detail::trimmed_lambda_signature< T >:

◆ hydra::detail::trimmed_lambda_signature< hydra::thrust::tuple< Head, Neck, Tail... > >

struct hydra::detail::trimmed_lambda_signature< hydra::thrust::tuple< Head, Neck, Tail... > >

template<typename Head, typename Neck, typename ... Tail>
struct hydra::detail::trimmed_lambda_signature< hydra::thrust::tuple< Head, Neck, Tail... > >

Collaboration diagram for hydra::detail::trimmed_lambda_signature< hydra::thrust::tuple< Head, Neck, Tail... > >:
Data Fields
type