Specifying a concept for a type that has a member function template using Concepts Lite
Long story short, right now you (I?) have to provide a specific U: template <template <class> class HKT, class T, class U = T> concept HKTWithTemplateMemberFunctionF { return requires(HKT<T> h) { // HKT<T> is a type, h is an object h.F(std::declval<U>()) -> HKT<U>; } } since the compiler cannot prove for all types U that … Read more