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

Go to the source code of this file.

Data Structures

class  hydra::Range< Iterator, Functor >
 

Namespaces

 hydra
 Generic policies definition.
 

Macros

#define RANGE2_INL_
 

Functions

template<typename Iterator , typename Functor >
hydra::thrust::detail::enable_if< detail::is_hydra_functor< Functor >::value, Range< Iterator, Functor > >::type hydra::make_range (Iterator begin, Iterator end, Functor const &functor)
 
template<typename Iterable , typename Functor >
hydra::thrust::detail::enable_if< detail::is_iterable< Iterable >::value &&detail::is_hydra_functor< Functor >::value, Range< decltype(std::declval< Iterable >).begin()), Functor > >::type hydra::make_range (Iterable const &iterable, Functor const &functor)
 
template<typename Iterable , typename Functor >
hydra::thrust::detail::enable_if< detail::is_iterable< Iterable >::value &&detail::is_hydra_functor< Functor >::value, Range< decltype(std::declval< Iterable >).begin()), Functor > >::type hydra::make_range (Iterable &&iterable, Functor const &functor)
 
template<typename Iterator , typename Functor >
hydra::thrust::detail::enable_if< detail::is_hydra_functor< Functor >::value, Range< hydra::thrust::reverse_iterator< Iterator >, Functor > >::type hydra::make_reverse_range (Iterator begin, Iterator end, Functor const &functor)
 
template<typename Iterable , typename Functor >
hydra::thrust::detail::enable_if< detail::is_reverse_iterable< Iterable >::value &&detail::is_hydra_functor< Functor >::value, Range< decltype(std::declval< Iterable >).rbegin()), Functor > >::type hydra::make_reverse_range (Iterable const &iterable, Functor const &functor)
 
template<typename Iterable , typename Functor >
hydra::thrust::detail::enable_if< detail::is_reverse_iterable< Iterable >::value &&detail::is_hydra_functor< Functor >::value, Range< decltype(std::declval< Iterable >).rbegin()), Functor > >::type hydra::make_reverse_range (Iterable &&iterable, Functor const &functor)
 
template<typename Iterable , typename Functor >
hydra::thrust::detail::enable_if< detail::is_iterable< Iterable >::value &&(detail::is_hydra_functor< Functor >::value||detail::is_hydra_lambda< Functor >::value), Range< decltype(std::declval< const Iterable >).begin()), Functor > >::type hydra::operator| (Iterable const &iterable, Functor const &functor)
 
template<typename Iterable , typename Functor >
hydra::thrust::detail::enable_if< detail::is_iterable< Iterable >::value &&(detail::is_hydra_functor< Functor >::value||detail::is_hydra_lambda< Functor >::value), Range< decltype(std::declval< Iterable >).begin()), Functor > >::type hydra::operator| (Iterable &&iterable, Functor const &functor)
 
template<typename Iterable >
hydra::thrust::detail::enable_if< detail::is_iterable< Iterable >::value, Range< hydra::thrust::reverse_iterator< decltype(std::declval< Iterable >).begin()) > > >::type hydra::reverse (Iterable &&iterable)
 

Macro Definition Documentation

◆ RANGE2_INL_

#define RANGE2_INL_