Multidimensional array views

Multidimensional array views#

#include <heyoka/mdspan.hpp>

In order to interact with and represent multidimensional array views, heyoka includes a reference implementation of the mdspan class from C++23. The implementation in heyoka is fully standard-compliant, except for the fact that it supports as an extension indexing via the function call operator.

template<typename T, typename Extents, typename LayoutPolicy = std::experimental::layout_right, typename AccessorPolicy = std::experimental::default_accessor<T>>
using mdspan = std::experimental::mdspan<T, Extents, LayoutPolicy, AccessorPolicy>#

Multidimensional array view.

See the mdspan documentation and tutorial.

template<typename IndexType, std::size_t... Extents>
using extents = std::experimental::extents<IndexType, Extents...>#
template<typename IndexType, std::size_t Rank>
using dextents = std::experimental::dextents<IndexType, Rank>#

Classes representing static and dynamic extents.

See the documentation.