Вот моя ситуация:
template<typename T, typename F>
inline
auto do_with(T&& rvalue, F&& f) {
auto obj = std::make_unique<T>(std::forward<T>(rvalue));
auto fut = f(*obj);
return fut.then_wrapped([obj = std::move(obj)] (auto&& fut) {
return std::move(fut);
});
}
Я хочу, чтобы параметр шаблона F&& f
принимал только ссылку non- const
lvalue. Как я должен применять это?