From fc0e0b5216321f5f237c38b3c822763b9cab7358 Mon Sep 17 00:00:00 2001
From: Alejandro Perea <alexpro820@gmail.com>
Date: Mon, 18 Apr 2022 22:04:15 +0200
Subject: [PATCH] Fix some clippy warnings (#214)

---
 CHANGELOG.md   | 1 +
 src/cache.rs   | 2 +-
 src/loader.rs  | 2 +-
 src/objects.rs | 4 ++--
 4 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 98b8408..50ffa3a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
 ### Added
 - `TileLayer::width` & `TileLayer::height` for ergonomic access of width/height.
 - `FiniteTileLayerData::get_tile_data`, `InfiniteTileLayerData::get_tile_data`.
+- `Default` derived implementation for `Loader` & `FilesystemResourceCache`
 
 ### Changed
 - Update `zstd` to `0.11.0`.
diff --git a/src/cache.rs b/src/cache.rs
index a650dd1..7846548 100644
--- a/src/cache.rs
+++ b/src/cache.rs
@@ -50,7 +50,7 @@ pub trait ResourceCache {
 }
 
 /// A cache that identifies resources by their path in the user's filesystem.
-#[derive(Debug)]
+#[derive(Debug, Default)]
 pub struct FilesystemResourceCache {
     tilesets: HashMap<ResourcePathBuf, Arc<Tileset>>,
 }
diff --git a/src/loader.rs b/src/loader.rs
index 939e1ff..35e4953 100644
--- a/src/loader.rs
+++ b/src/loader.rs
@@ -11,7 +11,7 @@ use crate::{Error, FilesystemResourceCache, Map, ResourceCache, Result, Tileset}
 /// This type is used for loading operations because they require a [`ResourceCache`] for
 /// intermediate artifacts, so using a type for creation can ensure that the cache is reused if
 /// loading more than one object is required.
-#[derive(Debug, Clone)]
+#[derive(Debug, Clone, Default)]
 pub struct Loader<Cache: ResourceCache = FilesystemResourceCache> {
     cache: Cache,
 }
diff --git a/src/objects.rs b/src/objects.rs
index 910d335..b2f8281 100644
--- a/src/objects.rs
+++ b/src/objects.rs
@@ -105,8 +105,8 @@ impl ObjectData {
         let height = h.unwrap_or(0f32);
         let rotation = r.unwrap_or(0f32);
         let id = id.unwrap_or(0u32);
-        let name = n.unwrap_or_else(String::new);
-        let obj_type = t.unwrap_or_else(String::new);
+        let name = n.unwrap_or_default();
+        let obj_type = t.unwrap_or_default();
         let mut shape = None;
         let mut properties = HashMap::new();
 
-- 
GitLab