Instead of
std::bind_front(&Very::Long::Namespace::VeryLongClassName::method, pobject)
I'm currently using
#define BIND_FRONT(method, pobject) std::bind_front(&std::remove_cvref_t<decltype(*(pobject))>::method, (pobject))
BIND_FRONT(method, pobject)
I wonder if we can make
(pobject->method)
or
((*pobject).method)
or
((*pobject)::method)
a syntactic sugar of
BIND_FRONT(method, pobject) // a.k.a `std::bind_front(&std::remove_cvref_t<decltype(*(pobject))>::method, (pobject))`
Possible? Any drawbacks?
https://redd.it/1t0gryo
@r_cpp