From: Samuel Just Date: Thu, 10 Jun 2021 00:07:33 +0000 (-0700) Subject: common/interruptible_future: use errorated future as core_type, fix constructor X-Git-Tag: v17.1.0~1567^2~23 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=1dfddd83e9b1b36b237b8b95497708246efca800;p=ceph.git common/interruptible_future: use errorated future as core_type, fix constructor No reason really to remember the underlying seastar::future type, we should only be interacting with the errorated future wrapped type. Signed-off-by: Samuel Just --- diff --git a/src/crimson/common/interruptible_future.h b/src/crimson/common/interruptible_future.h index d2ae5e8880c7..932304843187 100644 --- a/src/crimson/common/interruptible_future.h +++ b/src/crimson/common/interruptible_future.h @@ -524,7 +524,9 @@ class [[nodiscard]] interruptible_future_detail< : private ErroratedFuture<::crimson::errorated_future_marker> { public: - using core_type = ErroratedFuture<::crimson::errorated_future_marker>; + using core_type = ErroratedFuture>; + using errorator_type = typename core_type::errorator_type; + template using interrupt_futurize_t = typename interruptor::template futurize_t; @@ -542,14 +544,7 @@ public: [[gnu::always_inline]] interruptible_future_detail( ErroratedFuture2<::crimson::errorated_future_marker>&& fut) - : core_type(std::move(fut)) { - using src_errorator_t = \ - typename ErroratedFuture2< - ::crimson::errorated_future_marker>::errorator_type; - static_assert(core_type::errorator_type::template contains_once_v< - src_errorator_t>, - "conversion is only possible from less-or-eq errorated future!"); - } + : core_type(std::move(fut)) {} template