3 ms·
This is my own version of `OVERLOAD` that works with both, although I forgot how did it works: #define FWD(...) ::std::forward<decltype(__VA_ARGS__)>(__VA_
by Trung0246 2y ago
This is my own version of `OVERLOAD` that works with both, although I forgot how did it works:
#define FWD(...) ::std::forward<decltype(__VA_ARGS__)>(__VA_ARGS__)
#define LIFT_CUSTOM(X, CAPTURE) CAPTURE (auto &&... args) \
noexcept(noexcept(X(FWD(args)...))) -> decltype((X(FWD(args)...))) { \
return X(FWD(args)...); \
}
#define LIFT(X) LIFT_CUSTOM(X, [&])