#define DELEGATE(OBJ, METHOD, METHOD_AS) \ template decltype(auto) METHOD_AS(Args &&...args) { \ return OBJ->METHOD(std::forward(args)...); \ }