15template <std::size_t max_rank,
class OTensorNaturalIndex,
class... TensorNaturalIndex>
16static constexpr std::size_t stride_factor()
19 ddc::type_seq_rank_v < OTensorNaturalIndex,
20 ddc::detail::TypeSeq < TensorNaturalIndex... >>> max_rank) {
21 return OTensorNaturalIndex::mem_size();
27template <
class OTensorNaturalIndex,
class... TensorNaturalIndex>
28static constexpr std::size_t stride()
30 return (stride_factor<
33 ddc::detail::TypeSeq<TensorNaturalIndex...>>,
35 TensorNaturalIndex...>()
39template <
class OTensorNaturalIndex,
class... TensorNaturalIndex>
40static constexpr std::size_t next_stride()
43 ddc::type_seq_rank_v<OTensorNaturalIndex, ddc::detail::TypeSeq<TensorNaturalIndex...>>
45 return std::numeric_limits<std::size_t>::max();
47 return (stride_factor<
50 ddc::detail::TypeSeq<TensorNaturalIndex...>>
53 TensorNaturalIndex...>()
The top-level namespace of SimiLie.