Stroika Library 3.0d23
 
Loading...
Searching...
No Matches
Stroika::Foundation::Common::ITuple Concept Reference

Concept ITuple<T> check if T is a tuple. More...

#include <Concepts.h>

Concept definition

template<typename T>
concept Stroika::Foundation::Common::ITuple = !is_reference_v<T> && requires (T t) {
typename tuple_size<T>::type;
requires derived_from<tuple_size<T>, integral_constant<size_t, tuple_size_v<T>>>;
} && []<size_t... N> (index_sequence<N...>) { return (Private_::has_tuple_element<T, N> && ...); }(make_index_sequence<tuple_size_v<T>> ())
Concept ITuple<T> check if T is a tuple.
Definition Concepts.h:302

Detailed Description

Concept ITuple<T> check if T is a tuple.

based on https://stackoverflow.com/questions/68443804/c20-concept-to-check-tuple-like-types

Definition at line 302 of file Concepts.h.