diff options
| author | ilotterytea <iltsu@alright.party> | 2025-04-09 02:36:05 +0500 |
|---|---|---|
| committer | ilotterytea <iltsu@alright.party> | 2025-04-09 02:36:05 +0500 |
| commit | a4ce687ddd119ff97ac1efd3b23d0c27013845f4 (patch) | |
| tree | beb652ec216f425ab18bddb0efcfa2fd088c115e /src/emotes.rs | |
| parent | 93e26506c0211a3ebefa958e1df0d8cfbfc12b03 (diff) | |
upd: function signatures for RetrieveEmoteWS (attempt 2)
Diffstat (limited to 'src/emotes.rs')
| -rw-r--r-- | src/emotes.rs | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/emotes.rs b/src/emotes.rs index 53fd5ad..b1beb9d 100644 --- a/src/emotes.rs +++ b/src/emotes.rs @@ -1,3 +1,5 @@ +use std::sync::Arc; + use reqwest::Error; use serde::{Deserialize, Serialize}; @@ -33,11 +35,10 @@ pub trait RetrieveEmoteAPI<T> { async fn get_global_emotes(&self) -> Result<Vec<T>, Error>; } -pub trait RetrieveEmoteWS<T, F> -where - F: Fn(String, Option<String>, T), -{ - fn on_emote_create(&mut self, func: F); - fn on_emote_update(&mut self, func: F); - fn on_emote_delete(&mut self, func: F); +pub type RetrieveEmoteHandler<T> = Arc<dyn Fn(String, Option<String>, T) + Send + Sync>; + +pub trait RetrieveEmoteWS<T> { + fn on_emote_create(&mut self, func: impl Fn(String, Option<String>, T) + Send + Sync + 'static); + fn on_emote_update(&mut self, func: impl Fn(String, Option<String>, T) + Send + Sync + 'static); + fn on_emote_delete(&mut self, func: impl Fn(String, Option<String>, T) + Send + Sync + 'static); } |
