diff options
author | 2020-03-26 14:55:02 +0100 | |
---|---|---|
committer | 2020-03-26 14:55:02 +0100 | |
commit | 338fff35ac821e6b03d68bd94418de500fb50f77 (patch) | |
tree | 7028f6e3c6f28c3d14392e5d1b3bb07586955c28 /futures/src/subscription/tracker.rs | |
parent | 138110f5967899365bb4e1409651dec43a46d123 (diff) | |
download | iced-338fff35ac821e6b03d68bd94418de500fb50f77.tar.gz iced-338fff35ac821e6b03d68bd94418de500fb50f77.tar.bz2 iced-338fff35ac821e6b03d68bd94418de500fb50f77.zip |
Make `subscription::Recipe` cross-platform
By removing the `Send` requirement when targetting Wasm
Diffstat (limited to '')
-rw-r--r-- | futures/src/subscription/tracker.rs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/futures/src/subscription/tracker.rs b/futures/src/subscription/tracker.rs index cfa36170..efb464b5 100644 --- a/futures/src/subscription/tracker.rs +++ b/futures/src/subscription/tracker.rs @@ -1,6 +1,6 @@ -use crate::Subscription; +use crate::{BoxFuture, Subscription}; -use futures::{channel::mpsc, future::BoxFuture, sink::Sink}; +use futures::{channel::mpsc, sink::Sink}; use std::{collections::HashMap, marker::PhantomData}; /// A registry of subscription streams. @@ -59,7 +59,7 @@ where &mut self, subscription: Subscription<Hasher, Event, Message>, receiver: Receiver, - ) -> Vec<BoxFuture<'static, ()>> + ) -> Vec<BoxFuture<()>> where Message: 'static + Send, Receiver: 'static @@ -70,7 +70,7 @@ where { use futures::{future::FutureExt, stream::StreamExt}; - let mut futures = Vec::new(); + let mut futures: Vec<BoxFuture<()>> = Vec::new(); let recipes = subscription.recipes(); let mut alive = std::collections::HashSet::new(); @@ -115,7 +115,7 @@ where }, ); - futures.push(future.boxed()); + futures.push(Box::pin(future)); } self.subscriptions.retain(|id, _| alive.contains(&id)); |