Loading...
Searching...
No Matches
terra::linalg::Block2VectorLike Concept Reference

Concept for types that behave like block 2-vectors. Extends VectorLike and requires block types and accessors. More...

#include <vector.hpp>

Concept definition

template<typename T>
concept terra::linalg::Block2VectorLike = VectorLike< T > && requires( const T& self_const, T& self ) {
typename T::Block1Type;
typename T::Block2Type;
{ self_const.block_1() } -> std::same_as< const typename T::Block1Type& >;
{ self_const.block_2() } -> std::same_as< const typename T::Block2Type& >;
{ self.block_1() } -> std::same_as< typename T::Block1Type& >;
{ self.block_2() } -> std::same_as< typename T::Block2Type& >;
}
Concept for types that behave like block 2-vectors. Extends VectorLike and requires block types and a...
Definition vector.hpp:47
Concept for types that behave like vectors. Requires exposing ScalarType and implementations for line...
Definition vector.hpp:8

Detailed Description

Concept for types that behave like block 2-vectors. Extends VectorLike and requires block types and accessors.