]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
crimson: drop as_plain_future() from errorated futures.
authorRadoslaw Zarzynski <rzarzyns@redhat.com>
Sun, 29 Sep 2019 13:02:06 +0000 (15:02 +0200)
committerRadoslaw Zarzynski <rzarzyns@redhat.com>
Wed, 20 Nov 2019 19:37:44 +0000 (20:37 +0100)
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
src/crimson/common/errorator.h

index 1305bb48afc04e8027b599ca8159f4551eb7be36..a9d9718f440741ba2a5a84e8c581f5435b6fbb9a 100644 (file)
@@ -374,7 +374,7 @@ struct errorator {
         typename ErroratedFuture<ValuesT...>::errorator_type;
       static_assert(dest_errorator_t::template contains_once_v<errorator_type>,
                     "conversion is possible to more-or-eq errorated future!");
-      return std::move(*this).as_plain_future();
+      return static_cast<base_t&&>(*this);
     }
 
     // initialize future as failed without throwing. `make_exception_future()`
@@ -506,9 +506,6 @@ struct errorator {
     template <class...>
     friend class errorator;
 
-    base_t&& as_plain_future() && {
-      return std::move(*this);
-    }
   };
 
   // the visitor that forwards handling of all errors to next continuation
@@ -605,7 +602,7 @@ private:
   }
   template <class Arg>
   static decltype(auto) plainify(Arg&& arg) {
-    return std::forward<Arg>(arg).as_plain_future();
+    return std::forward<typename Arg::base_t>(arg);
   }
 
   template <class T, class = std::void_t<T>>