Hydra: multiarray.h File Reference (original) (raw)
#include <array>
#include <hydra/detail/Config.h>
#include <hydra/detail/BackendPolicy.h>
#include <hydra/detail/utility/Utility_Tuple.h>
#include <hydra/detail/functors/Caster.h>
#include <hydra/detail/Iterable_traits.h>
#include <hydra/detail/IteratorTraits.h>
#include <hydra/Tuple.h>
#include <hydra/Placeholders.h>
#include <hydra/Iterator.h>
#include <hydra/Range.h>
#include <hydra/detail/external/hydra_thrust/iterator/zip_iterator.h>
#include <hydra/detail/external/hydra_thrust/iterator/iterator_traits.h>
#include <hydra/detail/external/hydra_thrust/tuple.h>
#include <hydra/detail/external/hydra_thrust/logical.h>
#include <hydra/detail/external/hydra_thrust/functional.h>
#include <hydra/detail/external/hydra_thrust/detail/type_traits.h>
#include <hydra/detail/external/hydra_thrust/iterator/transform_iterator.h>
Functions
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto
hydra::begin (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> const &other) -> decltype(other.begin(placeholders::placeholder< I >
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto
hydra::begin (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> &other) -> decltype(other.begin(placeholders::placeholder< I >
template<hydra::detail::Backend BACKEND, typename T , size_t N, unsigned int... I>
auto
hydra::columns (multiarray< T, N, detail::BackendPolicy< BACKEND >>const &other, placeholders::placeholder< I >...cls) -> Range< decltype(std::declval< multiarray< T, N, detail::BackendPolicy< BACKEND >>const &>().begin(placeholders::placeholder< I >
template<hydra::detail::Backend BACKEND, typename T , size_t N, unsigned int... I>
auto
hydra::columns (multiarray< T, N, detail::BackendPolicy< BACKEND >> &other, placeholders::placeholder< I >...cls) -> Range< decltype(std::declval< multiarray< T, N, detail::BackendPolicy< BACKEND >> &&>().begin(placeholders::placeholder< I >
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto
hydra::end (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> const &other) -> decltype(other.end(placeholders::placeholder< I >
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto
hydra::end (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> &other) -> decltype(other.end(placeholders::placeholder< I >
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto
hydra::get (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> const &other) -> decltype(other.column(placeholders::placeholder< I >
Return the column _I
of the hydra::multiarray. More...
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto
hydra::get (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> &other) -> decltype(other.column(placeholders::placeholder< I >
Return the column _I
of the hydra::multiarray. More...
template<typename T , size_t N, hydra::detail::Backend BACKEND1, hydra::detail::Backend BACKEND2>
bool
hydra::operator!= (const multiarray< T, N, hydra::detail::BackendPolicy< BACKEND1 >> &lhs, const multiarray< T, N, hydra::detail::BackendPolicy< BACKEND2 >> &rhs)
template<typename T , size_t N, hydra::detail::Backend BACKEND1, hydra::detail::Backend BACKEND2>
bool
hydra::operator== (const multiarray< T, N, hydra::detail::BackendPolicy< BACKEND1 >> &lhs, const multiarray< T, N, hydra::detail::BackendPolicy< BACKEND2 >> &rhs)
hydra::Range< iterator_type > (other.begin(cls...), other.end(cls...))
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto
hydra::rbegin (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> const &other) -> decltype(other.rbegin(placeholders::placeholder< I >
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto
hydra::rbegin (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> &other) -> decltype(other.rbegin(placeholders::placeholder< I >
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto
hydra::rend (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> const &other) -> decltype(other.rend(placeholders::placeholder< I >
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto
hydra::rend (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> &other) -> decltype(other.rend(placeholders::placeholder< I >