#include <Common.hpp>
template<typename T, typename First, typename... Others>
&& std::is_move_constructible_v<T>
&& std::destructible<T>
&& requires(const T& matcher, First& first, Others&... others) {
{ detail::matches_hook::matches(matcher, first, others...) } -> std::convertible_to<bool>;
{ detail::describe_hook::describe(matcher) } -> std::convertible_to<StringViewT>;
}
Definition Common.hpp:107