summaryrefslogtreecommitdiffstats
path: root/futures/src/backend/null.rs
diff options
context:
space:
mode:
Diffstat (limited to 'futures/src/backend/null.rs')
-rw-r--r--futures/src/backend/null.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/futures/src/backend/null.rs b/futures/src/backend/null.rs
new file mode 100644
index 00000000..e22e7921
--- /dev/null
+++ b/futures/src/backend/null.rs
@@ -0,0 +1,18 @@
+//! A backend that does nothing!
+use futures::Future;
+
+/// An executor that drops all the futures, instead of spawning them.
+#[derive(Debug)]
+pub struct Executor;
+
+impl crate::Executor for Executor {
+ fn new() -> Result<Self, futures::io::Error> {
+ Ok(Self)
+ }
+
+ #[cfg(not(target_arch = "wasm32"))]
+ fn spawn(&self, _future: impl Future<Output = ()> + Send + 'static) {}
+
+ #[cfg(target_arch = "wasm32")]
+ fn spawn(&self, _future: impl Future<Output = ()> + 'static) {}
+}