I don't really see the point when C++ already lets you write
void foo(auto& t) { t.bar(); }
which can be called with any class that has the .bar() method anyway.
void foo(auto& t) { t.bar(); }
which can be called with any class that has the .bar() method anyway.