tulpje_cache/event/
thread.rs1use twilight_model::gateway::payload::incoming::{
2 ThreadCreate, ThreadDelete, ThreadListSync, ThreadUpdate,
3};
4
5use crate::{Error, UpdateCache};
6
7impl UpdateCache for ThreadCreate {
8 async fn update(&self, cache: &crate::Cache) -> Result<(), Error> {
9 cache.cache_channel(self.0.clone()).await?;
10 Ok(())
11 }
12}
13
14impl UpdateCache for ThreadDelete {
15 async fn update(&self, cache: &crate::Cache) -> Result<(), Error> {
16 cache.delete_channel(self.id).await?;
17 Ok(())
18 }
19}
20
21impl UpdateCache for ThreadListSync {
22 async fn update(&self, cache: &crate::Cache) -> Result<(), Error> {
23 cache.cache_channels(self.threads.clone()).await?;
24 Ok(())
25 }
26}
27
28impl UpdateCache for ThreadUpdate {
29 async fn update(&self, cache: &crate::Cache) -> Result<(), Error> {
30 cache.cache_channel(self.0.clone()).await?;
31 Ok(())
32 }
33}