|
| consteval bool | std::__mdspan::__all_dynamic (std::span< const size_t > __extents) |
| consteval bool | std::__mdspan::__all_static (std::span< const size_t > __extents) |
|
template<typename _IndexType, size_t... _Counts> |
| auto | std::__mdspan::__build_dextents_type (integer_sequence< size_t, _Counts... >) -> extents< _IndexType,((void) _Counts, dynamic_extent)... > |
| template<typename _IndexType, typename _Slice> |
| constexpr auto | std::__mdspan::__canonical_index (_Slice &&__slice) |
| template<typename _IndexType, typename _OffsetType, typename _SpanType, typename _StrideType> |
| constexpr auto | std::__mdspan::__canonical_range_slice (_OffsetType __offset, _SpanType __span, _StrideType __stride) |
| template<typename _IndexType, size_t _Extent, typename _OIndexType> |
| constexpr void | std::__mdspan::__check_inrange_index (const extents< _IndexType, _Extent > &__ext, const _OIndexType &__idx) |
| template<typename _IndexType, size_t _Extent, typename _OIndexType> |
| constexpr void | std::__mdspan::__check_valid_index (const extents< _IndexType, _Extent > &__ext, const _OIndexType &__idx) |
| template<typename _IndexType, size_t _Extent, typename _Slice> |
| constexpr void | std::__mdspan::__check_valid_slice (const extents< _IndexType, _Extent > &__ext, const _Slice &__slice) |
| template<typename _Extents, typename... _Slices> |
| constexpr void | std::__mdspan::__check_valid_slices (const _Extents &__exts, const _Slices &... __slices) |
| template<typename _Tp, size_t _Nm> |
| consteval bool | std::__mdspan::__contains_zero (const array< _Tp, _Nm > &__exts) noexcept |
| template<typename _Tp, size_t _Nm> |
| constexpr bool | std::__mdspan::__contains_zero (span< _Tp, _Nm > __exts) noexcept |
| template<typename _Extents> |
| constexpr span< const typename _Extents::index_type > | std::__mdspan::__dynamic_extents (const _Extents &__exts, size_t __begin=0, size_t __end=_Extents::rank()) noexcept |
| template<size_t _K, typename _Extents, typename _Slice> |
| constexpr _Extents::index_type | std::__mdspan::__dynamic_slice_extent (const _Extents &__exts, _Slice __slice) |
| template<typename _Extents> |
| constexpr bool | std::__mdspan::__empty (const _Extents &__exts) noexcept |
| template<typename _Extents> |
| constexpr _Extents::index_type | std::__mdspan::__extents_prod (const _Extents &__exts, size_t __sta_prod, size_t __begin, size_t __end) noexcept |
| template<size_t _Index, typename _Extents> |
| constexpr auto | std::__mdspan::__extract_extent (const _Extents &__exts) |
| template<typename _Extents> |
| constexpr _Extents::index_type | std::__mdspan::__fwd_prod (const _Extents &__exts, size_t __begin, size_t __end) noexcept |
| template<typename _Extents> |
| constexpr _Extents::index_type | std::__mdspan::__fwd_prod (const _Extents &__exts, size_t __r) noexcept |
| template<typename _IndexType, size_t _Nm> |
| consteval _IndexType | std::__mdspan::__fwd_prod (span< const _IndexType, _Nm > __values) |
| template<typename _PaddedMapping> |
| consteval size_t | std::__mdspan::__get_static_stride () |
| template<typename _IndexType, typename _OIndexTypeRef> |
| constexpr _IndexType | std::__mdspan::__index_type_cast (_OIndexTypeRef &&__other) |
| template<typename _IndexType, typename... _Slices> |
| consteval auto | std::__mdspan::__inv_map_rank () |
| consteval bool | std::__mdspan::__is_block (span< const _SliceKind > __slice_kinds, size_t __block_size) |
| template<typename _Extents> |
| constexpr bool | std::__mdspan::__is_representable_extents (const _Extents &__exts) noexcept |
| template<typename _IndexType, typename _OIndexType> |
| consteval bool | std::__mdspan::__is_representable_integer (_OIndexType __value) |
| template<typename _IndexType> |
| constexpr bool | std::__mdspan::__is_representable_least_multiple (size_t __x, size_t __y) |
| template<size_t _PaddedStride, typename _Extents, typename _LayoutTraits> |
| consteval bool | std::__mdspan::__is_representable_padded_size () |
| constexpr size_t | std::__mdspan::__least_multiple (size_t __x, size_t __y) |
| template<typename _Extents, typename... _Indices> |
| constexpr _Extents::index_type | std::__mdspan::__linear_index_left (const _Extents &__exts, _Indices... __indices) noexcept |
| template<typename _Extents, typename _Stride, typename... _Indices> |
| constexpr _Extents::index_type | std::__mdspan::__linear_index_leftpad (const _Extents &__exts, _Stride __stride, _Indices... __indices) |
| template<typename _Extents, typename... _Indices> |
| constexpr _Extents::index_type | std::__mdspan::__linear_index_right (const _Extents &__exts, _Indices... __indices) noexcept |
| template<typename _Extents, typename _Stride, typename... _Indices> |
| constexpr _Extents::index_type | std::__mdspan::__linear_index_rightpad (const _Extents &__exts, _Stride __stride, _Indices... __indices) |
| template<typename _Mapping, typename... _Indices> |
| constexpr _Mapping::index_type | std::__mdspan::__linear_index_strides (const _Mapping &__m, _Indices... __indices) noexcept |
| template<typename _Slice> |
| consteval _SliceKind | std::__mdspan::__make_slice_kind () |
| template<typename... _Slices> |
| consteval array< _SliceKind, sizeof...(_Slices)> | std::__mdspan::__make_slice_kind_array () |
| template<typename _Mapping> |
| consteval _LayoutSide | std::__mdspan::__mapping_side () |
| template<typename _Mapping> |
| constexpr _Mapping::index_type | std::__mdspan::__offset (const _Mapping &__m) noexcept |
| template<_LayoutSide _Side, size_t _Nm> |
| static consteval size_t | std::__mdspan::__padded_block_begin (span< const _SliceKind, _Nm > __slice_kinds, size_t __sub_rank) |
| static consteval size_t | std::__mdspan::__padded_block_begin_generic (span< const _SliceKind > __slice_kinds, size_t __sub_rank) |
| template<typename _Extents> |
| constexpr _Extents::index_type | std::__mdspan::__rev_prod (const _Extents &__exts, size_t __r) noexcept |
| template<typename _Extents> |
| constexpr _Extents::index_type | std::__mdspan::__size (const _Extents &__exts) noexcept |
| template<typename _Slice> |
| constexpr auto | std::__mdspan::__slice_begin (_Slice __slice) |
| template<typename _IndexType, typename _Slice> |
| constexpr auto | std::__mdspan::__slice_cast (_Slice &&__slice) |
| template<typename _Extents> |
| constexpr const array< size_t, _Extents::rank()> & | std::__mdspan::__static_extents () noexcept |
| template<typename _Extents> |
| constexpr span< const size_t > | std::__mdspan::__static_extents (size_t __begin, size_t __end) noexcept |
template<typename _Extents, typename _IndexType = typename _Extents::index_type>
requires __is_extents<_Extents> |
| consteval _IndexType | std::__mdspan::__static_quotient (_IndexType __nom=__gnu_cxx::__int_traits< _IndexType >::__max) |
| template<typename _IndexType> |
| consteval _IndexType | std::__mdspan::__static_quotient (std::span< const size_t > __sta_exts, _IndexType __nom=__gnu_cxx::__int_traits< _IndexType >::__max) |
| template<typename _IndexType, size_t _Extent, typename _Slice> |
| consteval size_t | std::__mdspan::__static_slice_extent () |
template<typename _IndexType, size_t... _Extents, typename... _Slices>
requires (sizeof...(_Slices) == sizeof...(_Extents)) |
| constexpr auto | std::__mdspan::__subextents (const extents< _IndexType, _Extents... > &__exts, _Slices... __slices) |
| template<typename _Mapping, typename... _Slices> |
| constexpr auto | std::__mdspan::__submapping (const _Mapping &__mapping, _Slices... __slices) |
| template<typename _Mapping> |
| constexpr auto | std::__mdspan::__submdspan_mapping_impl (const _Mapping &__mapping) |
template<typename _Mapping, typename... _Slices>
requires (sizeof...(_Slices) > 0) |
| constexpr auto | std::__mdspan::__submdspan_mapping_impl (const _Mapping &__mapping, _Slices... __slices) |
| template<typename _Mapping, typename... _Slices> |
| constexpr size_t | std::__mdspan::__suboffset (const _Mapping &__mapping, const _Slices &... __slices) |
| template<typename _IndexType, typename... _Slices> |
| consteval auto | std::__mdspan::__subrank () |
| template<typename _SubExts, typename _Mapping, typename... _Slices> |
| constexpr auto | std::__mdspan::__substrides (const _Mapping &__mapping, const _Slices &... __slices) |
| template<typename _SubExts, typename _Mapping, typename... _Slices> |
| constexpr auto | std::__mdspan::__substrides_generic (const _Mapping &__mapping, const _Slices &... __slices) |
| template<typename _SubExts, typename _Mapping, typename... _Slices> |
| constexpr auto | std::__mdspan::__substrides_standardized (const _Mapping &__mapping, const _Slices &... __slices) |
template<typename _IndexType, size_t... _Extents, typename... _RawSlices>
requires (sizeof...(_Extents) == sizeof...(_RawSlices)) |
| constexpr auto | std::canonical_slices (const extents< _IndexType, _Extents... > &__exts, _RawSlices... __raw_slices) |
template<typename... _Integrals>
requires (is_convertible_v<_Integrals, size_t> && ...) |
| | std::extents (_Integrals...) -> extents< size_t, __detail::__maybe_static_ext< _Integrals >... > |
template<typename _CArray>
requires is_array_v<_CArray> && (rank_v<_CArray> == 1) |
| | std::mdspan (_CArray &) -> mdspan< remove_all_extents_t< _CArray >, extents< size_t, extent_v< _CArray, 0 > > > |
template<typename _ElementType, typename... _Integrals>
requires (is_convertible_v<_Integrals, size_t> && ...) && (sizeof...(_Integrals) > 0) |
| | std::mdspan (_ElementType *, _Integrals...) -> mdspan< _ElementType, extents< size_t, __detail::__maybe_static_ext< _Integrals >... > > |
|
template<typename _ElementType, typename _MappingType> |
| | std::mdspan (_ElementType *, const _MappingType &) -> mdspan< _ElementType, typename _MappingType::extents_type, typename _MappingType::layout_type > |
|
template<typename _ElementType, typename _OIndexType, size_t _Nm> |
| | std::mdspan (_ElementType *, const array< _OIndexType, _Nm > &) -> mdspan< _ElementType, dextents< size_t, _Nm > > |
|
template<typename _ElementType, typename _IndexType, size_t... _ExtentsPack> |
| | std::mdspan (_ElementType *, const extents< _IndexType, _ExtentsPack... > &) -> mdspan< _ElementType, extents< _IndexType, _ExtentsPack... > > |
|
template<typename _ElementType, typename _OIndexType, size_t _Nm> |
| | std::mdspan (_ElementType *, span< _OIndexType, _Nm >) -> mdspan< _ElementType, dextents< size_t, _Nm > > |
template<typename _Pointer>
requires is_pointer_v<remove_reference_t<_Pointer>> |
| | std::mdspan (_Pointer &&) -> mdspan< remove_pointer_t< remove_reference_t< _Pointer > >, extents< size_t > > |
|
template<typename _MappingType, typename _AccessorType> |
| | std::mdspan (const typename _AccessorType::data_handle_type &, const _MappingType &, const _AccessorType &) -> mdspan< typename _AccessorType::element_type, typename _MappingType::extents_type, typename _MappingType::layout_type, _AccessorType > |
template<typename _IndexType, size_t... _Extents, typename... _RawSlices>
requires (sizeof...(_RawSlices) == sizeof...(_Extents)) |
| constexpr auto | std::subextents (const extents< _IndexType, _Extents... > &__exts, _RawSlices... __raw_slices) |
template<typename _ElementType, typename _Extents, typename _Layout, typename _Accessor, typename... _RawSlices>
requires (sizeof...(_RawSlices) == _Extents::rank() && __mdspan::__sliceable_mapping<typename _Layout::template mapping<_Extents>, __mdspan::__full_extent_t<_RawSlices>...>) |
| constexpr auto | std::submdspan (const mdspan< _ElementType, _Extents, _Layout, _Accessor > &__md, _RawSlices... __raw_slices) |
|
void | std::__mdspan::submdspan_mapping ()=delete |