From e0c1ce868d75acc65e4d1c3a03dd1bdf6b03e87f Mon Sep 17 00:00:00 2001 From: Gregor Reitzenstein Date: Thu, 17 Sep 2020 16:05:46 +0200 Subject: [PATCH] Make Actuator trait non-async --- src/modules/shelly.rs | 3 +-- src/registries/actuators.rs | 7 +++---- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/modules/shelly.rs b/src/modules/shelly.rs index 3da55b6..ec23895 100644 --- a/src/modules/shelly.rs +++ b/src/modules/shelly.rs @@ -49,9 +49,8 @@ impl Shelly { } -#[async_trait] impl Actuator for Shelly { - async fn subscribe(&mut self, signal: StatusSignal) { + fn subscribe(&mut self, signal: StatusSignal) { self.signal.replace(signal); if let Some(waker) = self.waker.take() { waker.wake(); diff --git a/src/registries/actuators.rs b/src/registries/actuators.rs index 936d503..15d64fa 100644 --- a/src/registries/actuators.rs +++ b/src/registries/actuators.rs @@ -38,9 +38,8 @@ impl Actuators { pub type StatusSignal = Pin + Send + Sync>>; -#[async_trait] pub trait Actuator: Stream> { - async fn subscribe(&mut self, signal: StatusSignal); + fn subscribe(&mut self, signal: StatusSignal); } // This is merely a proof that Actuator *can* be implemented on a finite, known type. Yay for type @@ -49,9 +48,9 @@ struct Dummy { log: Logger, signal: Option } -#[async_trait] + impl Actuator for Dummy { - async fn subscribe(&mut self, signal: StatusSignal) { + fn subscribe(&mut self, signal: StatusSignal) { self.signal.replace(signal); } }