Hydra  4.0.1
A header-only templated C++ framework to perform data analysis on massively parallel platforms.
ArgumentTraits.h File Reference
#include <hydra/detail/Config.h>
#include <hydra/detail/utility/StaticAssert.h>
#include <hydra/detail/utility/Generic.h>
#include <hydra/detail/TypeTraits.h>
#include <hydra/detail/external/hydra_thrust/tuple.h>
#include <hydra/detail/external/hydra_thrust/iterator/detail/tuple_of_iterator_references.h>
#include <hydra/detail/external/hydra_thrust/detail/type_traits.h>
#include <hydra/detail/external/hydra_thrust/type_traits/void_t.h>
#include <type_traits>
#include <tuple>
Include dependency graph for ArgumentTraits.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::fa_impl::_is_function_argument< T, U >
 
struct  hydra::detail::fa_impl::_is_function_argument< hydra::thrust::device_reference< T >, hydra::thrust::void_t< typename T::function_argument_type > >
 
struct  hydra::detail::fa_impl::_is_function_argument< T, hydra::thrust::void_t< typename T::function_argument_type > >
 
struct  hydra::detail::FunctionArgument< Derived, Type >
 
struct  hydra::detail::is_function_argument< Arg, B >
 
struct  hydra::detail::is_function_argument< Arg, false >
 
struct  hydra::detail::is_function_argument< Arg, true >
 
struct  hydra::detail::is_function_argument< hydra::thrust::device_reference< Arg >, true >
 
struct  hydra::detail::is_function_argument_pack< ArgTypes >
 
struct  hydra::detail::is_tuple_of_function_arguments< ArgType >
 
struct  hydra::detail::is_tuple_of_function_arguments< hydra::thrust::detail::tuple_of_iterator_references< ArgTypes &... > >
 
struct  hydra::detail::is_tuple_of_function_arguments< hydra::thrust::detail::tuple_of_iterator_references< hydra::thrust::device_reference< ArgTypes >... > >
 
struct  hydra::detail::is_tuple_of_function_arguments< hydra::thrust::tuple< ArgTypes... > >
 
struct  hydra::detail::is_tuple_type< ArgType >
 
struct  hydra::detail::is_tuple_type< hydra::thrust::detail::tuple_of_iterator_references< ArgTypes... > >
 
struct  hydra::detail::is_tuple_type< hydra::thrust::tuple< ArgTypes... > >
 
struct  hydra::detail::is_valid_type_pack< RefT, T >
 
struct  hydra::detail::is_valid_type_pack< hydra::thrust::tuple< RefT... >, T... >
 
struct  hydra::detail::stripped_type< Arg, T >
 
struct  hydra::detail::stripped_type< Arg, false >
 
struct  hydra::detail::stripped_type< Arg, true >
 

Namespaces

 hydra
 Generic policies definition.
 
 hydra::detail
 
 hydra::detail::fa_impl
 

Data Structure Documentation

◆ hydra::detail::is_function_argument

struct hydra::detail::is_function_argument

template<typename Arg, bool B = fa_impl::_is_function_argument<Arg>::value>
struct hydra::detail::is_function_argument< Arg, B >

Collaboration diagram for hydra::detail::is_function_argument< Arg, B >:

◆ hydra::detail::is_valid_type_pack

struct hydra::detail::is_valid_type_pack

template<typename RefT, typename ... T>
struct hydra::detail::is_valid_type_pack< RefT, T >

Collaboration diagram for hydra::detail::is_valid_type_pack< RefT, T >:

◆ hydra::detail::stripped_type

struct hydra::detail::stripped_type

template<typename Arg, bool T = is_function_argument<Arg>::value>
struct hydra::detail::stripped_type< Arg, T >

Collaboration diagram for hydra::detail::stripped_type< Arg, T >:

◆ hydra::detail::stripped_type< Arg, false >

struct hydra::detail::stripped_type< Arg, false >

template<typename Arg>
struct hydra::detail::stripped_type< Arg, false >

Collaboration diagram for hydra::detail::stripped_type< Arg, false >:
Data Fields
typedef Arg type

◆ hydra::detail::stripped_type< Arg, true >

struct hydra::detail::stripped_type< Arg, true >

template<typename Arg>
struct hydra::detail::stripped_type< Arg, true >

Collaboration diagram for hydra::detail::stripped_type< Arg, true >:
Data Fields
typedef value_type type