|
| constexpr | extents () noexcept=default |
| | The default constructor requires that all exts are not std::dynamic_extent.
|
| template<class... IndexTypes, std::enable_if_t<(... &&std::is_convertible_v< IndexTypes, index_type >), int > = 0, std::enable_if_t<(sizeof...(IndexTypes)==rank()||sizeof...(IndexTypes)==rank_dynamic()), int > = 0, std::enable_if_t<(... &&std::is_nothrow_constructible_v< index_type, IndexTypes >), int > = 0> |
| constexpr | extents (IndexTypes... e) noexcept |
| | Set all extents by the given integral sequence [[pre: all static extents correspond to the given value e]].
|
| template<class I, std::size_t N, std::enable_if_t< std::is_convertible_v< I, index_type >, int > = 0, std::enable_if_t<(N==rank()||N==rank_dynamic()), int > = 0> |
| constexpr | extents (const std::array< I, N > &e) noexcept |
| | Set all dynamic extents by the given integral array [[pre: all static extents correspond to the given values in e]].
|
| template<class I, std::size_t N, std::enable_if_t< std::is_convertible_v< I, index_type >, int > = 0, std::enable_if_t<(N==rank()||N==rank_dynamic()), int > = 0, std::enable_if_t< std::is_nothrow_constructible_v< index_type, const I & >, int > = 0> |
| constexpr | extents (std::span< I, N > e) noexcept |
| | Set all dynamic extents by the given integral array [[pre: all static extents correspond to the given values in e]].
|
| template<class I, std::size_t... e, std::enable_if_t<(sizeof...(e)==rank()), int > = 0, std::enable_if_t<((e==std::dynamic_extent||exts==std::dynamic_extent||e==exts) &&...), int > = 0> |
| constexpr | extents (const extents< I, e... > &other) noexcept |
|
[mdspan.extents.obs], observers of the multidimensional index space
|
| static constexpr rank_type | rank () noexcept |
| | The total number of dimensions.
|
| static constexpr rank_type | rank_dynamic () noexcept |
| | The number of dimensions with dynamic extent.
|
| static constexpr std::size_t | static_extent (rank_type r) noexcept |
| | Return the static extent of dimension r or std::dynamic_extent.
|
| constexpr index_type | extent (rank_type r) const noexcept |
| | Return the extent of dimension i.
|
template<class IndexType, std::size_t... exts>
class Dune::Std::extents< IndexType, exts >
Multidimensional index space with dynamic and static extents.
This class template represents a multidimensional index space of rank equal to sizeof...(exts). Each extent might be specified as a template parameter or as a dynamic parameter in the constructor.
- Template Parameters
-
| IndexType | An integral type other than bool |
| exts... | Each element of exts is either std::dynamic_extent or a representable value of type IndexType. |