using type = typename errorator_type::template future<Value>;
using value_type = seastar::internal::future_stored_type_t<Value>;
+ template<typename Func, typename... FuncArgs>
+ [[gnu::always_inline]]
+ static type apply(Func&& func, std::tuple<FuncArgs...>&& args) noexcept {
+ try {
+ return std::apply(
+ std::forward<Func>(func),
+ std::forward<std::tuple<FuncArgs...>>(args));
+ } catch (...) {
+ return make_exception_future(std::current_exception());
+ }
+ }
+
template<typename Func, typename... FuncArgs>
[[gnu::always_inline]]
static inline type invoke(Func&& func, FuncArgs&&... args) noexcept {