array.hpp Source File#
tile/core/container/array.hpp
Go to the documentation of this file.
108 template <index_t I> CK_TILE_HOST_DEVICE constexpr const auto& get(number<I>) const { return data[I]; }
115 template <index_t I> CK_TILE_HOST_DEVICE constexpr const auto& at(number<I>) const { return get(I); }
119 CK_TILE_HOST_DEVICE constexpr value_type& operator()(index_t i) { return get(i); } // TODO: compatible
151 template <typename Tx, index_t I> CK_TILE_HOST_DEVICE constexpr const auto& get_as(number<I>) const
156 template <typename Tx, index_t I> CK_TILE_HOST_DEVICE constexpr void set_as(number<I>, const Tx & x)
Definition tile/core/container/array.hpp:212
std::negation< is_ref_wrapper< std::decay_t< T > > > not_ref_wrapper
Definition tile/core/container/array.hpp:223
array< typename return_type_helper< D, Ts... >::type, sizeof...(Ts)> return_type
Definition tile/core/container/array.hpp:238
Definition tile/core/algorithm/cluster_descriptor.hpp:13
CK_TILE_HOST_DEVICE constexpr auto make_array_with(std::initializer_list< T > ilist)
Definition tile/core/container/array.hpp:257
CK_TILE_HOST_DEVICE constexpr auto to_array(const std::vector< X > &x)
Definition tile/core/container/array.hpp:286
CK_TILE_HOST_DEVICE constexpr bool operator==(const array< T, Size > &a, const array< T, Size > &b)
Definition tile/core/container/array.hpp:263
CK_TILE_HOST_DEVICE constexpr details::return_type< D, Ts... > make_array(Ts &&... ts)
Definition tile/core/container/array.hpp:242
CK_TILE_HOST_DEVICE constexpr bool operator!=(const array< T, Size > &a, const array< T, Size > &b)
Definition tile/core/container/array.hpp:280
STL namespace.
static CK_TILE_HOST_DEVICE constexpr index_t size()
Definition tile/core/container/array.hpp:178
CK_TILE_HOST_DEVICE constexpr array()
Definition tile/core/container/array.hpp:177
static CK_TILE_HOST_DEVICE constexpr bool is_static()
Definition tile/core/container/array.hpp:179
A fixed-size array container similar to std::array with additional utilities.
Definition tile/core/container/array.hpp:43
CK_TILE_HOST_DEVICE constexpr auto & get(number< I >)
Definition tile/core/container/array.hpp:107
CK_TILE_HOST_DEVICE constexpr array(std::initializer_list< value_type > ilist)
Definition tile/core/container/array.hpp:55
CK_TILE_HOST_DEVICE constexpr auto & get_as(number< I >)
Definition tile/core/container/array.hpp:149
CK_TILE_HOST_DEVICE constexpr void set_as(number< I >, const Tx &x)
Definition tile/core/container/array.hpp:156
static constexpr index_t N
Definition tile/core/container/array.hpp:45
static CK_TILE_HOST_DEVICE constexpr bool is_static()
Definition tile/core/container/array.hpp:98
CK_TILE_HOST_DEVICE constexpr auto & get_as()
Definition tile/core/container/array.hpp:139
value_type data[N]
Definition tile/core/container/array.hpp:49
CK_TILE_HOST_DEVICE constexpr const auto & at(number< I >) const
Definition tile/core/container/array.hpp:115
CK_TILE_HOST_DEVICE constexpr const auto & get(number< I >) const
Definition tile/core/container/array.hpp:108
CK_TILE_HOST_DEVICE constexpr auto & at(index_t i)
Definition tile/core/container/array.hpp:110
CK_TILE_HOST_DEVICE constexpr value_type & operator()(index_t i)
Definition tile/core/container/array.hpp:119
CK_TILE_HOST_DEVICE constexpr const auto & get() const
Definition tile/core/container/array.hpp:106
CK_TILE_HOST_DEVICE constexpr const auto & get_as(index_t i) const
Definition tile/core/container/array.hpp:147
CK_TILE_HOST_DEVICE constexpr auto & get_as(index_t i)
Definition tile/core/container/array.hpp:145
CK_TILE_HOST_DEVICE constexpr array()
Definition tile/core/container/array.hpp:52
CK_TILE_HOST_DEVICE constexpr auto & at()
Definition tile/core/container/array.hpp:112
CK_TILE_HOST_DEVICE constexpr auto & get()
Definition tile/core/container/array.hpp:101
CK_TILE_HOST_DEVICE constexpr const auto & at(index_t i) const
Definition tile/core/container/array.hpp:111
CK_TILE_HOST_DEVICE constexpr auto & get()
Definition tile/core/container/array.hpp:105
CK_TILE_HOST_DEVICE constexpr const auto & get(index_t i) const
Definition tile/core/container/array.hpp:104
static CK_TILE_HOST_DEVICE constexpr auto size()
Definition tile/core/container/array.hpp:97
CK_TILE_HOST_DEVICE constexpr const auto & get_as() const
Definition tile/core/container/array.hpp:141
CK_TILE_HOST_DEVICE constexpr const auto & at() const
Definition tile/core/container/array.hpp:113
CK_TILE_HOST_DEVICE constexpr auto & at(number< I >)
Definition tile/core/container/array.hpp:114
CK_TILE_HOST_DEVICE constexpr const auto & get_as(number< I >) const
Definition tile/core/container/array.hpp:151
CK_TILE_HOST_DEVICE constexpr const value_type & operator[](index_t i) const
Definition tile/core/container/array.hpp:117
CK_TILE_HOST_DEVICE constexpr void set_as(index_t i, const Tx &x)
Definition tile/core/container/array.hpp:154
CK_TILE_HOST_DEVICE constexpr value_type & operator[](index_t i)
Definition tile/core/container/array.hpp:118
CK_TILE_HOST_DEVICE constexpr array(Y c)
Definition tile/core/container/array.hpp:78
CK_TILE_HOST_DEVICE constexpr const auto & get() const
Definition tile/core/container/array.hpp:102
CK_TILE_HOST_DEVICE constexpr auto & get(index_t i)
Definition tile/core/container/array.hpp:103
Definition tile/core/container/array.hpp:215
Definition tile/core/container/array.hpp:227
Definition tile/core/utility/functional.hpp:43
static constexpr index_t vector_size
Definition tile/core/container/array.hpp:209
T scalar_type
Definition tile/core/container/array.hpp:208
Definition vector_type.hpp:90