Skip to content

Commit f4699c7

Browse files
authored
Update extract_map to 0.3 (#3349)
1 parent f5e6c77 commit f4699c7

File tree

6 files changed

+9
-25
lines changed

6 files changed

+9
-25
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ bool_to_bitflags = { version = "0.1.2" }
4646
nonmax = { version = "0.5.5", features = ["serde"] }
4747
strum = { version = "0.26", features = ["derive"] }
4848
to-arraystring = "0.2.0"
49-
extract_map = { version = "0.2.0", features = ["serde", "iter_mut"] }
49+
extract_map = { version = "0.3.0", features = ["serde"] }
5050
aformat = "0.1.3"
5151
bytes = "1.5.0"
5252
ref-cast = "1.0.23"

src/internal/prelude.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
55
pub use std::result::Result as StdResult;
66

7-
pub use extract_map::{ExtractKey, ExtractMap, LendingIterator};
7+
pub use extract_map::{ExtractKey, ExtractMap};
88
pub use serde_json::Value;
99
pub use small_fixed_array::{FixedArray, FixedString, TruncatingInto};
1010
pub use to_arraystring::ToArrayString;

src/internal/utils.rs

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,3 @@ pub fn join_to_string(
1212
buf.truncate(buf.len() - 1);
1313
buf
1414
}
15-
16-
// Required because of https://github.com/Crazytieguy/gat-lending-iterator/issues/31
17-
macro_rules! lending_for_each {
18-
($iter:expr, |$item:ident| $body:expr ) => {
19-
let mut __iter = $iter;
20-
while let Some(mut $item) = __iter.next() {
21-
$body
22-
}
23-
};
24-
}
25-
26-
pub(crate) use lending_for_each;

src/model/application/command_interaction.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ use crate::builder::{
1414
};
1515
#[cfg(feature = "model")]
1616
use crate::http::Http;
17-
use crate::internal::utils::lending_for_each;
1817
use crate::model::prelude::*;
1918

2019
/// An interaction when a user invokes a slash command.
@@ -214,8 +213,7 @@ impl<'de> Deserialize<'de> for CommandInteraction {
214213
interaction.user = member.user.clone();
215214
}
216215

217-
let iter = interaction.data.resolved.roles.iter_mut();
218-
lending_for_each!(iter, |r| r.guild_id = guild_id);
216+
interaction.data.resolved.roles.iter_mut().for_each(|r| r.guild_id = guild_id);
219217
}
220218
Ok(interaction)
221219
}

src/model/event.rs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ use serde_json::value::RawValue;
99
use strum::{EnumCount, IntoStaticStr, VariantNames};
1010

1111
use crate::constants::Opcode;
12-
use crate::internal::utils::lending_for_each;
1312
use crate::model::prelude::*;
1413

1514
/// Requires no gateway intents.
@@ -167,10 +166,10 @@ pub struct GuildCreateEvent {
167166
impl<'de> Deserialize<'de> for GuildCreateEvent {
168167
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> StdResult<Self, D::Error> {
169168
let mut guild: Guild = Guild::deserialize(deserializer)?;
170-
lending_for_each!(guild.channels.iter_mut(), |x| x.base.guild_id = guild.id);
171-
lending_for_each!(guild.threads.iter_mut(), |x| x.base.guild_id = guild.id);
172-
lending_for_each!(guild.members.iter_mut(), |x| x.guild_id = guild.id);
173-
lending_for_each!(guild.roles.iter_mut(), |x| x.guild_id = guild.id);
169+
guild.channels.iter_mut().for_each(|x| x.base.guild_id = guild.id);
170+
guild.threads.iter_mut().for_each(|x| x.base.guild_id = guild.id);
171+
guild.members.iter_mut().for_each(|x| x.guild_id = guild.id);
172+
guild.roles.iter_mut().for_each(|x| x.guild_id = guild.id);
174173
Ok(Self {
175174
guild,
176175
})
@@ -287,7 +286,7 @@ pub struct GuildMembersChunkEvent {
287286
impl<'de> Deserialize<'de> for GuildMembersChunkEvent {
288287
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> StdResult<Self, D::Error> {
289288
let mut event = Self::deserialize(deserializer)?; // calls #[serde(remote)]-generated inherent method
290-
lending_for_each!(event.members.iter_mut(), |m| m.guild_id = event.guild_id);
289+
event.members.iter_mut().for_each(|m| m.guild_id = event.guild_id);
291290
Ok(event)
292291
}
293292
}

src/model/guild/partial_guild.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ use serde::Serialize;
55
use crate::builder::EditGuild;
66
#[cfg(feature = "model")]
77
use crate::http::{CacheHttp, Http};
8-
use crate::internal::utils::lending_for_each;
98
use crate::model::prelude::*;
109
#[cfg(feature = "model")]
1110
use crate::model::utils::icon_url;
@@ -348,7 +347,7 @@ impl PartialGuild {
348347
impl<'de> Deserialize<'de> for PartialGuildGeneratedOriginal {
349348
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> StdResult<Self, D::Error> {
350349
let mut guild = Self::deserialize(deserializer)?; // calls #[serde(remote)]-generated inherent method
351-
lending_for_each!(guild.roles.iter_mut(), |r| r.guild_id = guild.id);
350+
guild.roles.iter_mut().for_each(|r| r.guild_id = guild.id);
352351
Ok(guild)
353352
}
354353
}

0 commit comments

Comments
 (0)