Unnamed repository; edit this file 'description' to name the repository.
Purge of unwraps
Ali Bektas 2023-06-30
parent f96442a · commit 72aeaef
-rw-r--r--crates/rust-analyzer/src/handlers/request.rs27
1 files changed, 13 insertions, 14 deletions
diff --git a/crates/rust-analyzer/src/handlers/request.rs b/crates/rust-analyzer/src/handlers/request.rs
index b103341f3c..c34adac540 100644
--- a/crates/rust-analyzer/src/handlers/request.rs
+++ b/crates/rust-analyzer/src/handlers/request.rs
@@ -2039,20 +2039,19 @@ fn to_url(path: VfsPath) -> Option<Url> {
}
fn resource_ops_supported(config: &Config, kind: ResourceOperationKind) -> anyhow::Result<()> {
- let ctn = config
- .caps()
- .workspace
- .as_ref()
- .unwrap()
- .workspace_edit
- .as_ref()
- .unwrap()
- .resource_operations
- .as_ref()
- .unwrap()
- .contains(&kind);
-
- if !ctn {
+ #[rustfmt::skip]
+ let resops = (|| {
+ config
+ .caps()
+ .workspace
+ .as_ref()?
+ .workspace_edit
+ .as_ref()?
+ .resource_operations
+ .as_ref()
+ })();
+
+ if resops.is_none() || !resops.unwrap().contains(&kind) {
return Err(LspError::new(
ErrorCode::RequestFailed as i32,
format!(