I have some callback definition like:
using TSomeCallback = std::function<ReturnType(Type1, Type2, Type3, …)>;
Also I have some method that accepts this callback as an argument:
void SetCallback(TSomeCallback);
All I want is to define some template that instantiates no-op callback directly from TSomeCallback:
void SetCallback(TSomeCallback = GetNoopCallback<TSomeCallback>()); // or
void SetCallback(TSomeCallback = GetNoopCallback(TSomeCallback())); // or any other way.
I found this answer - it's good, but I don't know how to improve it for my purpose.