summaryrefslogtreecommitdiff
path: root/libs/shared/src/redis.rs
diff options
context:
space:
mode:
Diffstat (limited to 'libs/shared/src/redis.rs')
-rw-r--r--libs/shared/src/redis.rs16
1 files changed, 6 insertions, 10 deletions
diff --git a/libs/shared/src/redis.rs b/libs/shared/src/redis.rs
index 5cae869..77aa97f 100644
--- a/libs/shared/src/redis.rs
+++ b/libs/shared/src/redis.rs
@@ -1,22 +1,18 @@
use redis::{aio::MultiplexedConnection, Client};
use serde::Deserialize;
-use std::{
- future::{Future, IntoFuture},
- pin::Pin,
-};
+use std::{future::Future, pin::Pin};
#[derive(Clone, Debug, Deserialize)]
pub struct Configuration {
pub url: String,
}
-impl IntoFuture for Configuration {
- type Output = anyhow::Result<MultiplexedConnection>;
- type IntoFuture = Pin<Box<dyn Future<Output = Self::Output> + Send>>;
-
- fn into_future(self) -> Self::IntoFuture {
+impl From<Configuration>
+ for Pin<Box<dyn Future<Output = anyhow::Result<MultiplexedConnection>> + Send>>
+{
+ fn from(value: Configuration) -> Self {
Box::pin(async move {
- let con = Client::open(self.url)?;
+ let con = Client::open(value.url)?;
let (multiplex, ready) = con.create_multiplexed_tokio_connection().await?;
tokio::spawn(ready);