YAKL
Namespaces | Functions
YAKL_intrinsics_merge.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 yakl
 
 yakl::intrinsics
 The intrinsics namespace contains a limited Fortran-like intrinsics library.
 

Functions

template<class T1 , class T2 , int rank, int myStyle>
Array< decltype(T1()+T2()), rank, memDevice, myStyle > yakl::intrinsics::merge (Array< T1, rank, memDevice, myStyle > const &arr_true, Array< T2, rank, memDevice, myStyle > const &arr_false, Array< bool, rank, memDevice, myStyle > const &mask, Stream stream=Stream())
 
template<class T1 , class T2 , int rank, int myStyle>
Array< decltype(T1()+T2()), rank, memHost, myStyle > yakl::intrinsics::merge (Array< T1, rank, memHost, myStyle > const &arr_true, Array< T2, rank, memHost, myStyle > const &arr_false, Array< bool, rank, memHost, myStyle > const &mask)
 
template<class T1 , class T2 , int rank, class B0 , class B1 , class B2 , class B3 >
YAKL_INLINE FSArray< decltype(T1()+T2()), rank, B0, B1, B2, B3 > yakl::intrinsics::merge (FSArray< T1, rank, B0, B1, B2, B3 > const &arr_true, FSArray< T2, rank, B0, B1, B2, B3 > const &arr_false, FSArray< bool, rank, B0, B1, B2, B3 > const &mask)
 
template<class T1 , class T2 , int rank, unsigned D0, unsigned D1, unsigned D2, unsigned D3>
YAKL_INLINE SArray< decltype(T1()+T2()), rank, D0, D1, D2, D3 > yakl::intrinsics::merge (SArray< T1, rank, D0, D1, D2, D3 > const &arr_true, SArray< T2, rank, D0, D1, D2, D3 > const &arr_false, SArray< bool, rank, D0, D1, D2, D3 > const &mask)
 
template<class T1 , class T2 , typename std::enable_if< std::is_arithmetic< T1 >::value &&std::is_arithmetic< T2 >::value, bool >::type = false>
decltype(T1()+T2()) YAKL_INLINE yakl::intrinsics::merge (T1 const t, T2 const f, bool cond)