|
| Vec ()=default |
|
template<concepts::ConvertibleTo< T >... Ts>
requires (sizeof...(Ts) == extent) |
constexpr | Vec (Ts &&... values) |
|
constexpr auto | values () -> Storage & |
|
constexpr auto | values () const -> Storage const & |
|
constexpr auto | begin () |
|
constexpr auto | begin () const |
|
constexpr auto | end () |
|
constexpr auto | end () const |
|
constexpr auto | operator+= (Vec const &other) -> Vec & |
|
constexpr auto | operator+= (T const &value) -> Vec & |
|
constexpr auto | operator+= (SignedT const &value) -> Vec &requires(!di::SameAs< SignedT, T >) |
|
constexpr auto | operator-= (Vec const &other) -> Vec & |
|
constexpr auto | operator-= (T const &value) -> Vec & |
|
constexpr auto | operator-= (SignedT const &value) -> Vec &requires(!di::SameAs< SignedT, T >) |
|
constexpr auto | operator*= (T const &value) -> Vec & |
|
constexpr auto | operator/= (T const &value) -> Vec & |
|
constexpr auto | get () &-> decltype(auto) |
|
constexpr auto | get () const &-> decltype(auto) |
|
constexpr auto | get () &&-> decltype(auto) |
|
constexpr auto | get () const &&-> decltype(auto) |
|
constexpr auto | get () &-> decltype(auto) |
|
constexpr auto | get () const &-> decltype(auto) |
|
constexpr auto | get () &&-> decltype(auto) |
|
constexpr auto | get () const &&-> decltype(auto) |
|
|
constexpr friend auto | operator== (Vec const &a, Vec const &b) -> bool requires(concepts::EqualityComparable< T >) |
|
constexpr friend auto | operator<=> (Vec const &a, Vec const &b) |
|
constexpr friend auto | operator+ (Vec const &a, Vec const &b) -> Vec requires(concepts::Copyable< T >) |
|
constexpr friend auto | operator+ (Vec const &a, T const &b) -> Vec requires(concepts::Copyable< T >) |
|
constexpr friend auto | operator+ (Vec const &a, SignedT const &b) -> Vec requires(concepts::Copyable< T > &&!di::SameAs< T, SignedT >) |
|
constexpr friend auto | operator+ (T const &b, Vec const &a) -> Vec requires(concepts::Copyable< T >) |
|
constexpr friend auto | operator+ (SignedT const &b, Vec const &a) -> Vec requires(concepts::Copyable< T > &&!di::SameAs< T, SignedT >) |
|
constexpr friend auto | operator- (Vec const &a, Vec const &b) -> Vec requires(concepts::Copyable< T >) |
|
constexpr friend auto | operator- (Vec const &a, T const &b) -> Vec requires(concepts::Copyable< T >) |
|
constexpr friend auto | operator- (Vec const &a, SignedT const &b) -> Vec requires(concepts::Copyable< T > &&!di::SameAs< T, SignedT >) |
|
constexpr friend auto | operator- (T const &b, Vec const &a) -> Vec requires(concepts::Copyable< T >) |
|
constexpr friend auto | operator- (SignedT const &b, Vec const &a) -> Vec requires(concepts::Copyable< T > &&!di::SameAs< T, SignedT >) |
|
constexpr friend auto | operator* (Vec const &a, T const &b) -> Vec |
|
constexpr friend auto | operator* (T const &b, Vec &a) -> Vec |
|
constexpr friend auto | operator/ (Vec const &a, T const &b) -> Vec |
|
constexpr friend auto | operator/ (T const &b, Vec &a) -> Vec |
|
constexpr friend auto | tag_invoke (di::Tag< vocab::tuple_size >, di::InPlaceType< Vec >) |
|
template<usize index>
requires (index < extent) |
constexpr friend auto | tag_invoke (di::Tag< vocab::tuple_element >, di::InPlaceType< Vec >, Constexpr< index >) -> InPlaceType< T > |
|
template<usize index>
requires (index < extent) |
constexpr friend auto | tag_invoke (di::Tag< vocab::tuple_element >, di::InPlaceType< Vec const >, Constexpr< index >) -> InPlaceType< T const > |
|
template<concepts::DecaySameAs< Vec > Self, usize index>
requires (index < extent) |
constexpr friend auto | tag_invoke (di::Tag< util::get_in_place >, Constexpr< index >, Self &&self) -> decltype(auto) |
|