diff --git a/src/brain.rs b/src/brain.rs --- a/src/brain.rs +++ b/src/brain.rs @@ -243,7 +243,7 @@ pub fn from_legacy_hashmap(map: HashMap>) -> Self { Self( map.into_iter() .map(|(k, v)| { - let sum = v.values().map(|w| *w as u64).sum::() as u64; + let sum = v.values().map(|w| *w as u64).sum::(); let edges = Edges( v.into_iter() .map(|(t, w)| (Self::read_legacy_token(t), w)) diff --git a/src/cmd/load_chain.rs b/src/cmd/load_chain.rs --- a/src/cmd/load_chain.rs +++ b/src/cmd/load_chain.rs @@ -54,7 +54,7 @@ { let mut brain = ctx.brain_handle.write().await; brain.merge_from(new_brain); ctx.pending_save.store(true, Ordering::Relaxed); - update_status(&*brain, &ctx.shard_sender).context("Failed to update status")?; + update_status(&brain, &ctx.shard_sender).context("Failed to update status")?; } client diff --git a/src/main.rs b/src/main.rs --- a/src/main.rs +++ b/src/main.rs @@ -81,7 +81,7 @@ } Event::Ready(ev) => { info!("Connected to gateway as {}", ev.user.name); let brain = ctx.brain_handle.read().await; - update_status(&*brain, &ctx.shard_sender).context("Failed to update status on ready") + update_status(&brain, &ctx.shard_sender).context("Failed to update status on ready") } _ => Ok(()), } @@ -101,7 +101,7 @@ if path.exists() { let mut file = File::open(path).context("Failed to open brain file")?; let mut brotli_stream = brotli::Decompressor::new(&mut file, BROTLI_BUF_SIZE); rmp_serde::from_read(&mut brotli_stream) - .map(|b| Some(b)) + .map(Some) .context("Failed to decode brain file") } else { Ok(None) diff --git a/src/on_message.rs b/src/on_message.rs --- a/src/on_message.rs +++ b/src/on_message.rs @@ -17,11 +17,11 @@ use crate::{BotContext, prelude::*, status::update_status}; async fn learn_message(msg: &str, ctx: Arc) -> Result { let mut brain = ctx.brain_handle.write().await; - let learned_new_word = brain.ingest(&msg); + let learned_new_word = brain.ingest(msg); ctx.pending_save.store(true, Ordering::Relaxed); if learned_new_word { - update_status(&*brain, &ctx.shard_sender).context("Failed to update status")?; + update_status(&brain, &ctx.shard_sender).context("Failed to update status")?; } Ok(()) @@ -40,17 +40,17 @@ let ctx_typ = ctx.clone(); let typ_id = channel_id; tokio::spawn(async move { - if typ_rx.await.ok().is_some_and(|start| start) { - if let Err(why) = ctx_typ.http.create_typing_trigger(typ_id).await { - warn!("Failed to set typing indicator:\n{why:?}"); - } + if typ_rx.await.ok().is_some_and(|start| start) + && let Err(why) = ctx_typ.http.create_typing_trigger(typ_id).await + { + warn!("Failed to set typing indicator:\n{why:?}"); } done_tx.send(()).ok(); }); let brain = ctx.brain_handle.read().await; if let Some(reply_text) = brain - .respond(&msg, is_self, Some(typ_tx)) + .respond(msg, is_self, Some(typ_tx)) .filter(|s| !s.trim().is_empty()) { drop(brain);