Lines Matching refs:T
26 template <typename T>
28 using type = T;
31 template <typename T>
32 struct future_result<std::future<T>> {
33 using type = T;
36 template <typename T>
37 struct future_result<std::shared_future<T>> {
38 using type = T;
41 template <typename T, template <typename> class FutureImpl>
42 struct future_result<Future<T, FutureImpl>> {
43 using type = T;
46 template <typename T>
47 using future_result_t = typename future_result<T>::type;
51 template <typename, typename T, template <typename> class>
54 template <typename Self, typename T>
55 class BaseFuture<Self, T, std::future> {
56 using Impl = std::future<T>;
59 Future<T, std::shared_future> share() {
60 if (T* value = std::get_if<T>(&self())) {
68 T get() {
69 if (T* value = std::get_if<T>(&self())) {
80 template <typename Self, typename T>
81 class BaseFuture<Self, T, std::shared_future> {
82 using Impl = std::shared_future<T>;
85 const T& get() const {
86 if (const T* value = std::get_if<T>(&self())) {