alopex_core/
async_util.rs1use core::future::Future;
7use core::pin::Pin;
8
9use futures_core::Stream;
10
11#[cfg(not(target_arch = "wasm32"))]
16pub trait MaybeSend: Send {}
17
18#[cfg(not(target_arch = "wasm32"))]
19impl<T: Send> MaybeSend for T {}
20
21#[cfg(target_arch = "wasm32")]
23pub trait MaybeSend {}
24
25#[cfg(target_arch = "wasm32")]
26impl<T> MaybeSend for T {}
27
28#[cfg(not(target_arch = "wasm32"))]
30pub type BoxFuture<'a, T> = Pin<Box<dyn Future<Output = T> + Send + 'a>>;
31
32#[cfg(target_arch = "wasm32")]
34pub type BoxFuture<'a, T> = Pin<Box<dyn Future<Output = T> + 'a>>;
35
36#[cfg(not(target_arch = "wasm32"))]
38pub type BoxStream<'a, T> = Pin<Box<dyn Stream<Item = T> + Send + 'a>>;
39
40#[cfg(target_arch = "wasm32")]
42pub type BoxStream<'a, T> = Pin<Box<dyn Stream<Item = T> + 'a>>;