From: Dominik Csapak <d.csapak@proxmox.com>
To: pbs-devel@lists.proxmox.com
Subject: [pbs-devel] [PATCH proxmox-backup v2 04/14] tape/media_*: clippy fixes
Date: Fri, 16 Apr 2021 12:29:00 +0200 [thread overview]
Message-ID: <20210416102910.8506-5-d.csapak@proxmox.com> (raw)
In-Reply-To: <20210416102910.8506-1-d.csapak@proxmox.com>
fixes:
* impl (or derive) Default if struct has 'new()'
* use `or_insert_with`
* combine if branches
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
src/tape/media_catalog.rs | 10 ++++++----
src/tape/media_pool.rs | 16 ++++++----------
src/tape/media_set.rs | 4 ++++
3 files changed, 16 insertions(+), 14 deletions(-)
diff --git a/src/tape/media_catalog.rs b/src/tape/media_catalog.rs
index aff91c43..ac11346a 100644
--- a/src/tape/media_catalog.rs
+++ b/src/tape/media_catalog.rs
@@ -30,6 +30,7 @@ use crate::{
},
};
+#[derive(Default)]
pub struct DatastoreContent {
pub snapshot_index: HashMap<String, u64>, // snapshot => file_nr
pub chunk_index: HashMap<[u8;32], u64>, // chunk => file_nr
@@ -580,7 +581,7 @@ impl MediaCatalog {
unsafe { self.pending.write_le_value(entry)?; }
self.pending.extend(store.as_bytes());
- self.content.entry(store.to_string()).or_insert(DatastoreContent::new());
+ self.content.entry(store.to_string()).or_insert_with(DatastoreContent::new);
self.current_archive = Some((uuid, file_number, store.to_string()));
@@ -688,7 +689,7 @@ impl MediaCatalog {
self.pending.extend(snapshot.as_bytes());
let content = self.content.entry(store.to_string())
- .or_insert(DatastoreContent::new());
+ .or_insert_with(DatastoreContent::new);
content.snapshot_index.insert(snapshot.to_string(), file_number);
@@ -809,7 +810,7 @@ impl MediaCatalog {
self.check_start_chunk_archive(file_number)?;
self.content.entry(store.to_string())
- .or_insert(DatastoreContent::new());
+ .or_insert_with(DatastoreContent::new);
self.current_archive = Some((uuid, file_number, store.to_string()));
}
@@ -843,7 +844,7 @@ impl MediaCatalog {
self.check_register_snapshot(file_number, snapshot)?;
let content = self.content.entry(store.to_string())
- .or_insert(DatastoreContent::new());
+ .or_insert_with(DatastoreContent::new);
content.snapshot_index.insert(snapshot.to_string(), file_number);
@@ -884,6 +885,7 @@ impl MediaCatalog {
/// Media set catalog
///
/// Catalog for multiple media.
+#[derive(Default)]
pub struct MediaSetCatalog {
catalog_list: HashMap<Uuid, MediaCatalog>,
}
diff --git a/src/tape/media_pool.rs b/src/tape/media_pool.rs
index 039b46fc..51b537c4 100644
--- a/src/tape/media_pool.rs
+++ b/src/tape/media_pool.rs
@@ -348,13 +348,11 @@ impl MediaPool {
MediaLocation::Online(name) => {
if self.force_media_availability {
true
+ } else if let Some(ref changer_name) = self.changer_name {
+ name == changer_name
} else {
- if let Some(ref changer_name) = self.changer_name {
- name == changer_name
- } else {
- // a standalone drive cannot use media currently inside a library
- false
- }
+ // a standalone drive cannot use media currently inside a library
+ false
}
}
MediaLocation::Offline => {
@@ -606,10 +604,8 @@ impl MediaPool {
let media_location = media.location();
if self.location_is_available(media_location) {
last_is_writable = true;
- } else {
- if let MediaLocation::Vault(vault) = media_location {
- bail!("writable media offsite in vault '{}'", vault);
- }
+ } else if let MediaLocation::Vault(vault) = media_location {
+ bail!("writable media offsite in vault '{}'", vault);
}
},
_ => bail!("unable to use media set - wrong media status {:?}", media.status()),
diff --git a/src/tape/media_set.rs b/src/tape/media_set.rs
index 5568e7f6..858a9e77 100644
--- a/src/tape/media_set.rs
+++ b/src/tape/media_set.rs
@@ -74,3 +74,7 @@ impl MediaSet {
}
}
}
+
+impl Default for MediaSet {
+ fn default() -> Self { Self::new() }
+}
--
2.20.1
next prev parent reply other threads:[~2021-04-16 10:29 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-16 10:28 [pbs-devel] [PATCH proxmox-backup v2 00/14] various " Dominik Csapak
2021-04-16 10:28 ` [pbs-devel] [PATCH proxmox-backup v2 01/14] api2/tape: " Dominik Csapak
2021-04-16 10:28 ` [pbs-devel] [PATCH proxmox-backup v2 02/14] tape/changer: " Dominik Csapak
2021-04-16 10:28 ` [pbs-devel] [PATCH proxmox-backup v2 03/14] tape/drive: " Dominik Csapak
2021-04-16 10:29 ` Dominik Csapak [this message]
2021-04-16 10:29 ` [pbs-devel] [PATCH proxmox-backup v2 05/14] tape/pool_writer: " Dominik Csapak
2021-04-16 10:29 ` [pbs-devel] [PATCH proxmox-backup v2 06/14] backup: " Dominik Csapak
2021-04-16 10:29 ` [pbs-devel] [PATCH proxmox-backup v2 07/14] pxar: clippy fix `or_fun_call` Dominik Csapak
2021-04-16 10:29 ` [pbs-devel] [PATCH proxmox-backup v2 08/14] bin: clippy fixes Dominik Csapak
2021-04-16 10:29 ` [pbs-devel] [PATCH proxmox-backup v2 09/14] tape/*: " Dominik Csapak
2021-04-16 10:29 ` [pbs-devel] [PATCH proxmox-backup v2 10/14] tools: " Dominik Csapak
2021-04-16 10:29 ` [pbs-devel] [PATCH proxmox-backup v2 11/14] config/tape_encryption_keys: " Dominik Csapak
2021-04-16 10:29 ` [pbs-devel] [PATCH proxmox-backup v2 12/14] server/worker_task: clippy fix Dominik Csapak
2021-04-16 10:29 ` [pbs-devel] [PATCH proxmox-backup v2 13/14] bin/proxmox-file-restore: clippy fixes Dominik Csapak
2021-04-16 10:29 ` [pbs-devel] [PATCH proxmox-backup v2 14/14] bin/proxmox-restore-daemon: " Dominik Csapak
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210416102910.8506-5-d.csapak@proxmox.com \
--to=d.csapak@proxmox.com \
--cc=pbs-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox