From: Maximiliano Sandoval <m.sandoval@proxmox.com>
To: pdm-devel@lists.proxmox.com
Subject: [pdm-devel] [PATCH proxmox-yew-comp 05/15] apt_repositories: collapse match statement with if-let
Date: Mon, 13 Jan 2025 15:27:15 +0100 [thread overview]
Message-ID: <20250113142725.523748-5-m.sandoval@proxmox.com> (raw)
In-Reply-To: <20250113142725.523748-1-m.sandoval@proxmox.com>
Fixes:
warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let`
--> src/apt_repositories.rs:521:17
|
521 | / match selected_record {
522 | | TreeEntry::Repository {
523 | | path, index, repo, ..
524 | | } => {
... |
544 | | _ => {}
545 | | }
| |_________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match
= note: `#[warn(clippy::single_match)]` on by default
help: try
|
521 ~ if let TreeEntry::Repository {
522 + path, index, repo, ..
523 + } = selected_record {
524 + let param = json!({
525 + "path": path,
526 + "index": index,
527 + "enabled": !repo.enabled,
528 + });
529 + // fixme: add digest to protect against concurrent changes
530 + let url = format!("{}/repositories", props.base_url);
531 + let link = ctx.link();
532 + link.clone().spawn(async move {
533 + match crate::http_post(url, Some(param)).await {
534 + Ok(()) => {
535 + link.send_reload();
536 + }
537 + Err(err) => {
538 + link.show_error(tr!("API call failed"), err, true);
539 + }
540 + }
541 + });
542 + }
Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
src/apt_repositories.rs | 44 ++++++++++++++++++++---------------------
1 file changed, 21 insertions(+), 23 deletions(-)
diff --git a/src/apt_repositories.rs b/src/apt_repositories.rs
index 8e6207f..365e01b 100644
--- a/src/apt_repositories.rs
+++ b/src/apt_repositories.rs
@@ -515,30 +515,28 @@ impl LoadableComponent for ProxmoxAptRepositories {
Some(record) => record,
None => return false,
};
- match selected_record {
- TreeEntry::Repository {
- path, index, repo, ..
- } => {
- let param = json!({
- "path": path,
- "index": index,
- "enabled": !repo.enabled,
- });
- // fixme: add digest to protect against concurrent changes
- let url = format!("{}/repositories", props.base_url);
- let link = ctx.link();
- link.clone().spawn(async move {
- match crate::http_post(url, Some(param)).await {
- Ok(()) => {
- link.send_reload();
- }
- Err(err) => {
- link.show_error(tr!("API call failed"), err, true);
- }
+ if let TreeEntry::Repository {
+ path, index, repo, ..
+ } = selected_record
+ {
+ let param = json!({
+ "path": path,
+ "index": index,
+ "enabled": !repo.enabled,
+ });
+ // fixme: add digest to protect against concurrent changes
+ let url = format!("{}/repositories", props.base_url);
+ let link = ctx.link();
+ link.clone().spawn(async move {
+ match crate::http_post(url, Some(param)).await {
+ Ok(()) => {
+ link.send_reload();
}
- });
- }
- _ => {}
+ Err(err) => {
+ link.show_error(tr!("API call failed"), err, true);
+ }
+ }
+ });
}
false
}
--
2.39.5
_______________________________________________
pdm-devel mailing list
pdm-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pdm-devel
next prev parent reply other threads:[~2025-01-13 14:28 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-13 14:27 [pdm-devel] [PATCH proxmox-yew-comp 01/15] remove needless borrows Maximiliano Sandoval
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 02/15] remove needless casts Maximiliano Sandoval
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 03/15] apt_package_manager: use &str instead of format! Maximiliano Sandoval
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 04/15] apt_repositories: collapse else-if blocks Maximiliano Sandoval
2025-01-13 14:27 ` Maximiliano Sandoval [this message]
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 06/15] use any() instead of find and is_none combination Maximiliano Sandoval
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 07/15] remove unnecesary closure used with then() Maximiliano Sandoval
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 08/15] use *= operator for assigments Maximiliano Sandoval
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 09/15] use or_default and unwrap_or_default Maximiliano Sandoval
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 10/15] remove redundant pattern matching Maximiliano Sandoval
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 11/15] use std::mem::swap instead of manual swapping Maximiliano Sandoval
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 12/15] use enumerate() instead of indexing Maximiliano Sandoval
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 13/15] use len() instead of length comparison to zero Maximiliano Sandoval
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 14/15] use cloned() instead of explicit clone() in closure Maximiliano Sandoval
2025-01-13 14:27 ` [pdm-devel] [PATCH proxmox-yew-comp 15/15] use and_then instead of map(..).flatten(..) on Option Maximiliano Sandoval
2025-01-14 8:29 ` [pdm-devel] applied: [PATCH proxmox-yew-comp 01/15] remove needless borrows Dietmar Maurer
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=20250113142725.523748-5-m.sandoval@proxmox.com \
--to=m.sandoval@proxmox.com \
--cc=pdm-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