Files
cppdraft_translate/cppdraft/linalg/layout/packed/cons.md
2025-10-25 03:02:53 +03:00

2.0 KiB
Raw Blame History

[linalg.layout.packed.cons]

29 Numerics library [numerics]

29.9 Basic linear algebra algorithms [linalg]

29.9.6 Layouts for packed matrix types [linalg.layout.packed]

29.9.6.2 Constructors [linalg.layout.packed.cons]

🔗

constexpr mapping(const extents_type& e) noexcept;

1

#

Preconditions:

  • (1.1)

    Let N be equal to e.extent(0). Then, N×(N+1) is representable as a value of type index_type ([basic.fundamental]).

  • (1.2)

    e.extent(0) equals e.extent(1).

2

#

Effects: Direct-non-list-initializes extents_ with e.

🔗

template<class OtherExtents> explicit(!is_convertible_v<OtherExtents, extents_type>) constexpr mapping(const mapping<OtherExtents>& other) noexcept;

3

#

Constraints: is_constructible_v<extents_type, OtherExtents> is true.

4

#

Preconditions: Let N be other.extents().extent(0).

Then, N×(N+1) is representable as a value of type index_type ([basic.fundamental]).

5

#

Effects: Direct-non-list-initializes extents_ with other.extents().