array.hpp File Reference

array.hpp File Reference#

Composable Kernel: array.hpp File Reference
array.hpp File Reference

Go to the source code of this file.

Classes

struct  ck_tile::array< T_, N_ >
 A fixed-size array container similar to std::array with additional utilities. More...
struct  ck_tile::array< T, 0 >
 Specialization of array container for zero elements. More...
struct  ck_tile::vector_traits< array< T, N >, void >
struct  ck_tile::details::is_ref_wrapper< class >
struct  ck_tile::details::is_ref_wrapper< std::reference_wrapper< T > >
struct  ck_tile::details::return_type_helper< D,... >
struct  ck_tile::details::return_type_helper< void, Ts... >

Namespaces

namespace  ck_tile
namespace  ck_tile::details

Macros

#define AR_AS_COM_()

Typedefs

template<class T>
using ck_tile::details::not_ref_wrapper = std::negation<is_ref_wrapper<std::decay_t<T>>>
template<class D, class... Ts>
using ck_tile::details::return_type = array<typename return_type_helper<D, Ts...>::type, sizeof...(Ts)>

Functions

template<typename D = void, typename... Ts>
CK_TILE_HOST_DEVICE constexpr details::return_type< D, Ts... > ck_tile::make_array (Ts &&... ts)
template<typename T, index_t Size>
CK_TILE_HOST_DEVICE constexpr auto ck_tile::make_array_with (std::initializer_list< T > ilist)
template<typename T, index_t Size>
CK_TILE_HOST_DEVICE constexpr bool ck_tile::operator== (const array< T, Size > &a, const array< T, Size > &b)
template<typename T, index_t Size>
CK_TILE_HOST_DEVICE constexpr bool ck_tile::operator!= (const array< T, Size > &a, const array< T, Size > &b)
template<typename T, index_t N, typename X>
CK_TILE_HOST_DEVICE constexpr auto ck_tile::to_array (const std::vector< X > &x)
template<typename T, index_t N, typename X>
CK_TILE_HOST_DEVICE constexpr auto ck_tile::to_array (const X &x)

Macro Definition Documentation

◆ AR_AS_COM_

#define AR_AS_COM_ ( )
Value:
static_assert(sizeof(value_type) * N % sizeof(Tx) == 0); \
constexpr int vx = sizeof(value_type) * N / sizeof(Tx)