From 6913fb2c4736da830a9ed5993c19d52364a8bdcd Mon Sep 17 00:00:00 2001
From: Louis Capitanchik <contact@louiscap.co>
Date: Wed, 19 Apr 2023 02:58:29 +0100
Subject: [PATCH] apply clippy suggestions

---
 src/ldtk/mod.rs     |  2 +-
 src/map_query.rs    |  2 +-
 src/pregen.rs       |  2 +-
 src/system/types.rs | 57 +++++++++++++++++----------------------------
 4 files changed, 24 insertions(+), 39 deletions(-)

diff --git a/src/ldtk/mod.rs b/src/ldtk/mod.rs
index 797ef89..c4a305f 100644
--- a/src/ldtk/mod.rs
+++ b/src/ldtk/mod.rs
@@ -153,7 +153,7 @@ mod test {
 
 		let project = Project::from_bytes(project_data).expect("Failed to parse project file");
 		for layer in project.defs.layers.iter() {
-			for auto_rule_group in layer.auto_rule_groups.iter() {}
+			for _auto_rule_group in layer.auto_rule_groups.iter() {}
 		}
 	}
 }
diff --git a/src/map_query.rs b/src/map_query.rs
index e52ca28..9c0f3d5 100644
--- a/src/map_query.rs
+++ b/src/map_query.rs
@@ -8,7 +8,7 @@ use bevy::prelude::*;
 use crate::assets::LevelIndex;
 use crate::ldtk::EntityInstance;
 use crate::system::ActiveLevel;
-use crate::{get_ldtk_tile_scale, LdtkLayer, LdtkLevel};
+use crate::{LdtkLayer, LdtkLevel};
 
 #[derive(SystemParam)]
 pub struct MapQuery<'w, 's> {
diff --git a/src/pregen.rs b/src/pregen.rs
index b5c3bfd..5d03752 100644
--- a/src/pregen.rs
+++ b/src/pregen.rs
@@ -1,4 +1,4 @@
-use bevy::prelude::{Handle, Image, TextureAtlas};
+use bevy::prelude::{Image, TextureAtlas};
 use bevy::render::render_resource::TextureFormat;
 use bevy::render::texture::TextureFormatPixelInfo;
 
diff --git a/src/system/types.rs b/src/system/types.rs
index 50eac7e..9d9c7d0 100644
--- a/src/system/types.rs
+++ b/src/system/types.rs
@@ -5,7 +5,7 @@ use std::path::Path;
 
 use bevy::math::{IVec2, Rect, UVec2, Vec2};
 use num_traits::AsPrimitive;
-use quadtree_rs::area::{Area, AreaBuilder};
+use quadtree_rs::area::AreaBuilder;
 use quadtree_rs::point::Point;
 use quadtree_rs::Quadtree;
 use serde::{Deserialize, Serialize};
@@ -148,7 +148,7 @@ impl LdtkLevel {
 		self.properties.get(&name.to_string())
 	}
 	pub fn property_or_null(&self, name: impl ToString) -> &Value {
-		self.property(name).unwrap_or_else(|| &Value::Null)
+		self.property(name).unwrap_or(&Value::Null)
 	}
 	pub fn get_indexer(&self) -> Indexer {
 		Indexer::new(px_to_grid(self.level.px_wid), px_to_grid(self.level.px_hei))
@@ -170,10 +170,10 @@ impl From<Level> for LdtkLevel {
 		let fields = std::mem::take(&mut value.field_instances);
 
 		for field in fields {
-			properties.insert(field.identifier, field.value.unwrap_or_else(|| Value::Null));
+			properties.insert(field.identifier, field.value.unwrap_or(Value::Null));
 		}
 
-		let level_width = value.px_wid;
+		let _level_width = value.px_wid;
 		let level_height = value.px_hei;
 
 		let mut level = Self {
@@ -196,14 +196,14 @@ impl From<Level> for LdtkLevel {
 				for field in entity.field_instances.iter() {
 					properties.insert(
 						field.identifier.clone(),
-						field.value.as_ref().unwrap_or_else(|| &Value::Null).clone(),
+						field.value.as_ref().unwrap_or(&Value::Null).clone(),
 					);
 				}
 
-				let width = entity.width;
+				let _width = entity.width;
 				let height = entity.height;
-				let left_x = entity.px[0];
-				let bottom_y = level_height - (entity.px[1] + height);
+				let _left_x = entity.px[0];
+				let _bottom_y = level_height - (entity.px[1] + height);
 
 				let size = IVec2::new(entity.width as i32, entity.height as i32);
 				let position = IVec2::new(level.level.px_wid as i32, level.level.px_hei as i32)
@@ -216,15 +216,12 @@ impl From<Level> for LdtkLevel {
 					collides: true,
 				};
 
-				match AreaBuilder::default()
+				if let Ok(point) = AreaBuilder::default()
 					.anchor(Point::from((position.x as i64, position.y as i64)))
 					.dimensions((size.x as i64, size.y as i64))
 					.build()
 				{
-					Ok(point) => {
-						collider_quads.insert(point, entity);
-					}
-					Err(_) => {}
+					collider_quads.insert(point, entity);
 				}
 			}
 		}
@@ -424,7 +421,7 @@ fn convert_map_types(map: &Map<String, Value>) -> HashMap<String, Value> {
 impl Properties {
 	pub fn as_string(&self, name: impl ToString) -> Option<String> {
 		self.get(&name.to_string()).and_then(|value| match value {
-			Value::String(value) => Some(format!("{}", value)),
+			Value::String(value) => Some(value.to_string()),
 			Value::Bool(value) => Some(format!("{}", value)),
 			Value::Number(value) => Some(format!("{}", value)),
 			_ => None,
@@ -492,17 +489,11 @@ impl Properties {
 		}
 	}
 	pub fn is_null(&self, name: impl ToString) -> bool {
-		match self.0.get(&name.to_string()) {
-			Some(Value::Null) => true,
-			_ => false,
-		}
+		matches!(self.0.get(&name.to_string()), Some(Value::Null))
 	}
 
 	pub fn is_null_or_undefined(&self, name: impl ToString) -> bool {
-		match self.0.get(&name.to_string()) {
-			None | Some(Value::Null) => true,
-			_ => false,
-		}
+		matches!(self.0.get(&name.to_string()), None | Some(Value::Null))
 	}
 
 	pub fn is_null_or_falsy(&self, name: impl ToString) -> bool {
@@ -607,24 +598,18 @@ impl WorldLayer {
 	}
 
 	pub fn for_each_tile(&self, mut cb: impl FnMut(i64, i64, &WorldTile)) {
-		match &self.layer_data {
-			LayerType::GidTiles(map) => {
-				map.iter().for_each(|(pos, tile)| {
-					cb(pos.0, pos.1, tile);
-				});
-			}
-			_ => {}
+		if let LayerType::GidTiles(map) = &self.layer_data {
+			map.iter().for_each(|(pos, tile)| {
+				cb(pos.0, pos.1, tile);
+			});
 		}
 	}
 
 	pub fn for_each_tile_mut(&mut self, mut cb: impl FnMut(i64, i64, &mut WorldTile)) {
-		match &mut self.layer_data {
-			LayerType::GidTiles(map) => {
-				map.iter_mut().for_each(|(pos, tile)| {
-					cb(pos.0, pos.1, tile);
-				});
-			}
-			_ => {}
+		if let LayerType::GidTiles(map) = &mut self.layer_data {
+			map.iter_mut().for_each(|(pos, tile)| {
+				cb(pos.0, pos.1, tile);
+			});
 		}
 	}
 
-- 
GitLab