summarylogtreecommitdiffstats
path: root/0001-comply-with-rust-lang-rfcs-2140.patch
blob: 4b5f6909bca9cd4ca6261bb82eb172c160e63a1f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
From fc2db6fa2310dbb4971a9d9ad4df553081a4ea05 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=A9clairevoyant?=
 <848000+eclairevoyant@users.noreply.github.com>
Date: Fri, 23 Jun 2023 09:21:29 -0400
Subject: [PATCH] comply with rust-lang/rfcs#2140

---
 crates/eww/src/error_handling_ctx.rs         | 2 +-
 crates/eww/src/main.rs                       | 4 ++--
 crates/eww/src/widgets/widget_definitions.rs | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/crates/eww/src/error_handling_ctx.rs b/crates/eww/src/error_handling_ctx.rs
index 3273200..05af272 100644
--- a/crates/eww/src/error_handling_ctx.rs
+++ b/crates/eww/src/error_handling_ctx.rs
@@ -53,7 +53,7 @@ pub fn anyhow_err_to_diagnostic(err: &anyhow::Error) -> Option<Diagnostic<usize>
 }
 
 pub fn stringify_diagnostic(mut diagnostic: codespan_reporting::diagnostic::Diagnostic<usize>) -> anyhow::Result<String> {
-    diagnostic.labels.drain_filter(|label| Span(label.range.start, label.range.end, label.file_id).is_dummy());
+    diagnostic.labels.retain(|label| !Span(label.range.start, label.range.end, label.file_id).is_dummy());
 
     let mut config = term::Config::default();
     let mut chars = Chars::box_drawing();
diff --git a/crates/eww/src/main.rs b/crates/eww/src/main.rs
index 1e61c3b..9211d03 100644
--- a/crates/eww/src/main.rs
+++ b/crates/eww/src/main.rs
@@ -1,9 +1,9 @@
 #![feature(trace_macros)]
-#![feature(drain_filter)]
+#![feature(extract_if)]
 #![feature(box_patterns)]
 #![feature(slice_concat_trait)]
 #![feature(try_blocks)]
-#![feature(hash_drain_filter)]
+#![feature(hash_extract_if)]
 #![allow(rustdoc::private_intra_doc_links)]
 
 extern crate gtk;
diff --git a/crates/eww/src/widgets/widget_definitions.rs b/crates/eww/src/widgets/widget_definitions.rs
index 2cdc907..a142940 100644
--- a/crates/eww/src/widgets/widget_definitions.rs
+++ b/crates/eww/src/widgets/widget_definitions.rs
@@ -127,7 +127,7 @@ static DEPRECATED_ATTRS: Lazy<HashSet<&str>> =
 /// @desc these properties apply to _all_ widgets, and can be used anywhere!
 pub(super) fn resolve_widget_attrs(bargs: &mut BuilderArgs, gtk_widget: &gtk::Widget) -> Result<()> {
     let deprecated: HashSet<_> = DEPRECATED_ATTRS.to_owned();
-    let contained_deprecated: Vec<_> = bargs.unhandled_attrs.drain_filter(|a, _| deprecated.contains(&a.0 as &str)).collect();
+    let contained_deprecated: Vec<_> = bargs.unhandled_attrs.extract_if(|a, _| deprecated.contains(&a.0 as &str)).collect();
     if !contained_deprecated.is_empty() {
         let diag = error_handling_ctx::stringify_diagnostic(gen_diagnostic! {
             kind =  Severity::Error,
-- 
2.41.0