From f7e9964049271cdb84c97c558af93ea04a23b6f8 Mon Sep 17 00:00:00 2001 From: Samuel Just Date: Wed, 31 Jan 2024 15:32:30 -0800 Subject: [PATCH] crimson/common: expose set_coroutine for crimson future specializations/wrappers Signed-off-by: Samuel Just (cherry picked from commit 53c4acde1d6b00ed703a71c3137bee92df4be46a) --- src/crimson/common/errorator.h | 4 ++++ src/crimson/common/interruptible_future.h | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/src/crimson/common/errorator.h b/src/crimson/common/errorator.h index 692498b75ae..7e7d2c64a2d 100644 --- a/src/crimson/common/errorator.h +++ b/src/crimson/common/errorator.h @@ -607,6 +607,10 @@ private: "ErrorT is not enlisted in errorator"); } + void set_coroutine(seastar::task& coroutine) noexcept { + base_t::set_coroutine(coroutine); + } + template auto safe_then(ValueFuncT&& valfunc, ErrorVisitorT&& errfunc) { static_assert((... && std::is_invocable_v::value_type; using tuple_type = typename seastar::future::tuple_type; @@ -771,6 +775,10 @@ public: : core_type(::seastar::futurize::make_exception_future(std::move(ep))) { } + void set_coroutine(seastar::task& coroutine) noexcept { + core_type::set_coroutine(coroutine); + } + template = 0> [[gnu::always_inline]] -- 2.39.5