C++ named requirements: LayoutMappingPolicy (since C++23)
From cppreference.com
C++
C++ named requirements
|
|
|
LayoutMappingPolicy is a type used to specify layout policy of std:: mdspan . It provides a member alias template whose specialization is a LayoutMapping type.
Requirements
A type
MP
satisfies
LayoutMappingPolicy
if the type requirements shown below are valid:
Legend
Type | Definition |
MP
|
a layout mapping policy class |
M
|
a layout mapping class |
E
|
a specialization of std:: extents |
Type requirements
-
MP
::
mapping
<
E
>
is valid and denotes a type
M
that satisfies LayoutMapping . -
M
::
layout_type
is valid and denotes a type
MP
. -
M
::
extents_type
is valid and denotes a type
E
.
Standard library
The following standard library types satisfy LayoutMappingPolicy requirements:
(C++23)
|
column-major multidimensional array layout mapping policy; leftmost extent has stride
1
(class) |
(C++23)
|
row-major multidimensional array layout mapping policy; rightmost extent has stride
1
(class) |
(C++23)
|
a layout mapping policy with user-defined strides
(class) |
(C++26)
|
column-major layout mapping policy with padding stride that can be greater than or equal to the leftmost extent
(class template) |
(C++26)
|
row-major layout mapping policy with padding stride that can be greater than or equal to the rightmost extent
(class template) |
Defined in namespace
std::linalg
|
|
(C++26)
|
std::mdspan
layout mapping policy that swaps the rightmost two indices, extents, and strides of any unique layout mapping policy
(class template) |
(C++26)
|
std::mdspan
layout mapping policy that represents a square matrix that stores only the entries in one triangle, in a packed contiguous format
(class template) |
Retrieved from "
https://en.cppreference.com/mwiki/index.php?title=cpp/named_req/LayoutMappingPolicy&oldid=178031
"