From 93b8bd4799561a69213adc577614af76b597ca8f Mon Sep 17 00:00:00 2001 From: Denis Rystsov Date: Thu, 16 Jun 2022 09:09:53 -0700 Subject: [PATCH] make available_promise support variable templates --- src/v/utils/available_promise.h | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/v/utils/available_promise.h b/src/v/utils/available_promise.h index f994b07ea141..a69f20241b1c 100644 --- a/src/v/utils/available_promise.h +++ b/src/v/utils/available_promise.h @@ -14,19 +14,20 @@ #include -template +template class available_promise { public: - ss::future get_future() { return _promise.get_future(); } + ss::future get_future() { return _promise.get_future(); } - void set_value(T&& value) { + template + void set_value(A&&... a) { _available = true; - _promise.set_value(std::move(value)); + _promise.set_value(std::forward(a)...); } bool available() { return _available; } private: bool _available{false}; - ss::promise _promise; + ss::promise _promise; };