From bcedd3350dc871ff5df5a2b2ff2b178feaeea681 Mon Sep 17 00:00:00 2001 From: Joscha Date: Thu, 5 Dec 2024 14:09:01 +0100 Subject: [PATCH] Refactor replies module --- Cargo.toml | 1 + src/lib.rs | 1 + src/replies.rs | 16 ++++------------ 3 files changed, 6 insertions(+), 12 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index b909a94..2bf0e7f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,6 +8,7 @@ caseless = "0.2.1" jiff = { version = "0.1.15", default-features = false, features = ["std"] } serde = { version = "1.0.215", features = ["derive"] } serde_json = "1.0.133" +tokio = { version = "1.42.0", features = ["sync", "time"] } unicode-normalization = "0.1.24" [lints] diff --git a/src/lib.rs b/src/lib.rs index 17942a6..2de0a32 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,5 +1,6 @@ pub mod api; mod emoji; pub mod nick; +mod replies; pub use crate::emoji::Emoji; diff --git a/src/replies.rs b/src/replies.rs index db00995..9c751fe 100644 --- a/src/replies.rs +++ b/src/replies.rs @@ -1,10 +1,6 @@ -use std::collections::HashMap; -use std::fmt; -use std::hash::Hash; -use std::time::Duration; -use std::{error, result}; +use std::{collections::HashMap, error, fmt, hash::Hash, result, time::Duration}; -use tokio::sync::oneshot::{self, Receiver, Sender}; +use tokio::sync::oneshot; #[derive(Debug)] pub enum Error { @@ -28,7 +24,7 @@ pub type Result = result::Result; #[derive(Debug)] pub struct PendingReply { timeout: Duration, - result: Receiver, + result: oneshot::Receiver, } impl PendingReply { @@ -44,7 +40,7 @@ impl PendingReply { #[derive(Debug)] pub struct Replies { timeout: Duration, - pending: HashMap>, + pending: HashMap>, } impl Replies { @@ -55,10 +51,6 @@ impl Replies { } } - pub fn timeout(&self) -> Duration { - self.timeout - } - pub fn wait_for(&mut self, id: I) -> PendingReply where I: Eq + Hash,