|
Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
|
Mapping from row-major multi-indices to linear offsets. More...
#include <ah-mdspan.H>
Public Types | |
| using | extents_type = Extents |
| using | index_type = typename Extents::index_type |
| using | rank_type = typename Extents::rank_type |
| using | layout_type = layout_right |
Public Member Functions | |
| constexpr | mapping () noexcept=default |
| constexpr | mapping (const Extents &e) noexcept |
| constexpr const extents_type & | extents () const noexcept |
| template<class... Indices> requires (sizeof...(Indices) == Extents::rank()) | |
| constexpr index_type | operator() (Indices... idxs) const noexcept |
| Calculate the flat offset for a multi-dimensional index. | |
| constexpr index_type | required_span_size () const noexcept |
Static Public Member Functions | |
| static constexpr bool | is_always_unique () noexcept |
| static constexpr bool | is_always_exhaustive () noexcept |
| static constexpr bool | is_always_strided () noexcept |
Private Attributes | |
| Extents | exts_ {} |
Mapping from row-major multi-indices to linear offsets.
Definition at line 416 of file ah-mdspan.H.
Definition at line 421 of file ah-mdspan.H.
| using Aleph::layout_right::mapping< Extents >::index_type = typename Extents::index_type |
Definition at line 422 of file ah-mdspan.H.
| using Aleph::layout_right::mapping< Extents >::layout_type = layout_right |
Definition at line 424 of file ah-mdspan.H.
| using Aleph::layout_right::mapping< Extents >::rank_type = typename Extents::rank_type |
Definition at line 423 of file ah-mdspan.H.
|
constexprdefaultnoexcept |
|
inlineexplicitconstexprnoexcept |
Definition at line 427 of file ah-mdspan.H.
|
inlineconstexprnoexcept |
Definition at line 429 of file ah-mdspan.H.
References Aleph::layout_right::mapping< Extents >::exts_.
|
inlinestaticconstexprnoexcept |
Definition at line 456 of file ah-mdspan.H.
|
inlinestaticconstexprnoexcept |
Definition at line 457 of file ah-mdspan.H.
|
inlinestaticconstexprnoexcept |
Definition at line 455 of file ah-mdspan.H.
|
inlineconstexprnoexcept |
Calculate the flat offset for a multi-dimensional index.
| idxs | one index per axis, in rank order. |
Definition at line 438 of file ah-mdspan.H.
References Aleph::blossom_maximum_cardinality_matching(), Aleph::layout_right::mapping< Extents >::exts_, offset, and r.
|
inlineconstexprnoexcept |
Definition at line 447 of file ah-mdspan.H.
References Aleph::blossom_maximum_cardinality_matching(), Aleph::layout_right::mapping< Extents >::exts_, and r.
|
private |
Definition at line 418 of file ah-mdspan.H.
Referenced by Aleph::layout_right::mapping< Extents >::extents(), Aleph::layout_right::mapping< Extents >::operator()(), and Aleph::layout_right::mapping< Extents >::required_span_size().