12template <
class M, MatrixStructure S = MatrixStructure::General>
20 requires requires {
value.transposed(); }
25 requires requires { std::forward<M>(
value).transposed(); }
28 std::forward<M>(
value).transposed()};
41[[nodiscard]]
constexpr auto tril(M &&m) {
47[[nodiscard]]
constexpr auto triu(M &&m) {
52template <MatrixStructure S,
class M>
61template <
class M, MatrixStructure S>
constexpr MatrixStructure transpose(MatrixStructure s)
constexpr auto make_structured(M &&m)
View with the given structure.
Structured(M &&) -> Structured< M >
constexpr auto triu(M &&m)
Upper-triangular view.
constexpr auto tril(M &&m)
Lower-triangular view.
constexpr auto simdify(simdifiable auto &&a) -> simdified_view_t< decltype(a)>
Light-weight wrapper class used for overload resolution of triangular and symmetric matrices.
constexpr auto transposed() const &
Structured(Structured &&)=default
constexpr auto transposed() &&
Structured(const Structured &)=default
static constexpr MatrixStructure structure