From: Ian Jackson Date: Thu, 31 Mar 2022 01:43:49 +0000 (+0100) Subject: clippy: Miscellaneous minor changes X-Git-Tag: otter-1.0.0~43 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=45221c7b2a2ca666dcc1029d9651361a265dbb83;p=otter.git clippy: Miscellaneous minor changes Signed-off-by: Ian Jackson --- diff --git a/clippy-options b/clippy-options index 0e439c96..708cfece 100644 --- a/clippy-options +++ b/clippy-options @@ -26,3 +26,7 @@ -A clippy::needless_collect # rust-clippy/issues/8046, since Nov 2021 at least -A clippy::match_ref_pats -A clippy::needless_question_mark +-A clippy::needless_return +-A clippy::if_same_then_else # rust-clippy/issues/6285 etc. +-A clippy::redundant_pattern_matching +-A clippy::unnecessary_lazy_evaluations diff --git a/src/hidden.rs b/src/hidden.rs index 9f708cef..b3e22917 100644 --- a/src/hidden.rs +++ b/src/hidden.rs @@ -387,14 +387,14 @@ impl PieceRenderInstructions { impl IPieceTraitObj { pub fn new(p: Box) -> Self { Self(p) } - pub fn show(&self, _: ShowUnocculted) -> &Box { - &self.0 + pub fn show(&self, _: ShowUnocculted) -> &dyn PieceTrait { + &*self.0 } pub fn into_inner(self) -> Box { self.0 } - pub fn direct_trait_access(&self) -> &Box { - &self.0 + pub fn direct_trait_access(&self) -> &dyn PieceTrait { + &*self.0 } } @@ -636,7 +636,7 @@ fn recalculate_occultation_general< dbgc!(most_obscure); let describe_occulter = |oni| Ok::<_,IE>(if_chain! { - if let Some(ref h) = occulteds.as_refs().main()[oni]; + if let Some(h) = occulteds.as_refs().main()[oni]; let opiece = h.occ.occulter; let bad = || internal_error_bydebug(&("missing", opiece, h.occid)); let oipc = ipieces.get(opiece).ok_or_else(bad)?; diff --git a/src/mgmtchannel.rs b/src/mgmtchannel.rs index c1dcc431..cb51d553 100644 --- a/src/mgmtchannel.rs +++ b/src/mgmtchannel.rs @@ -247,9 +247,9 @@ impl MgmtChannelForGame { players }; - players.into_iter().filter( + players.into_iter().find( |(_,mpi)| &mpi.account == account - ).next() + ) } #[throws(AE)] diff --git a/src/organise.rs b/src/organise.rs index d9b4f941..1f7642cb 100644 --- a/src/organise.rs +++ b/src/organise.rs @@ -187,8 +187,8 @@ fn try_layout(region: &Rect, let PrimaryEnt { piece, bbox, .. } = &pieces[ih]; let place = 'placed: loop { for xi in 0..3 { - let place = (cur - att.tl(&bbox)?)?; - let br_real = (place + att.br_real(&bbox)?)?; + let place = (cur - att.tl(bbox)?)?; + let br_real = (place + att.br_real(bbox)?)?; let tr = |w| { trace_dbg!("attempt inner", region, att, piece, bbox, xi, cur, n_y, @@ -217,7 +217,7 @@ fn try_layout(region: &Rect, } throw!(IE::OrganisedPlacementFailure); }; - let br_tile = ((place + att.tl(&bbox)?)? + att.stride(&bbox)?)?; + let br_tile = ((place + att.tl(bbox)?)? + att.stride(bbox)?)?; cur.coords[0] = br_tile.x(); n_y = max(n_y, br_tile.y()); out.push(place); @@ -238,7 +238,8 @@ pub fn ui_operation(a: &mut ApiPieceOpArgs<'_>, _: OcculterRotationChecked, let ApiPieceOpArgs { ref mut gs, player,ipieces,ioccults,.. } = *a; let apiece = a.piece; let agpc = gs.pieces.byid(apiece)?; - let aipc = ipieces.get(apiece).ok_or(internal_error_bydebug(&apiece))?; + let aipc = ipieces.get(apiece) + .ok_or_else(|| internal_error_bydebug(&apiece))?; let gpl = gs.players.byid(player)?; let log = log_did_to_piece(ioccults, &gs.occults, gpl,agpc,aipc, "organised")?; @@ -255,7 +256,7 @@ pub fn ui_operation(a: &mut ApiPieceOpArgs<'_>, _: OcculterRotationChecked, let ipc = ipc.show(vis); if let Some(bbox) = want!( Ok = ipc.bbox_approx(), ?piece ); let sortkey = if do_sort { - Some(ipc.sortkey().unwrap_or(ipc.itemname())) + Some(ipc.sortkey().unwrap_or_else(|| ipc.itemname())) } else { None }; diff --git a/src/pcrender.rs b/src/pcrender.rs index 2387dc6a..e1141467 100644 --- a/src/pcrender.rs +++ b/src/pcrender.rs @@ -170,13 +170,13 @@ impl PieceRenderInstructions { use PriOcculted as PO; match &self.occulted { PO::Visible(_) | PO::Occulted => (gpc.pos, &gpc.zlevel), - PO::Displaced(pos, zlevel) => (*pos, &zlevel), + PO::Displaced(pos, zlevel) => (*pos, zlevel), } } #[throws(IE)] - pub fn make_defs<'p>(&self, ioccults: &IOccults, gs: &GameState, - gpc: &GPiece, ipc: &IPiece) -> (Html, Rect) + pub fn make_defs(&self, ioccults: &IOccults, gs: &GameState, + gpc: &GPiece, ipc: &IPiece) -> (Html, Rect) { let pri = self; let instead = pri.instead(ioccults, ipc)?;