misc: shorten option getters

This commit is contained in:
2025-04-29 11:24:59 +02:00
parent 224d3866c8
commit 309faf712d

View File

@@ -26,29 +26,17 @@ pub async fn run(ctx: &Context, interaction: &CommandInteraction) -> Result<(),
let target_user = options let target_user = options
.iter() .iter()
.find_map(|opt| { .find_map(|opt| match (opt.name, &opt.value) {
if opt.name == "target" { ("target", ResolvedValue::User(user, member)) => Some((user, member.as_ref())),
match &opt.value { _ => None,
ResolvedValue::User(user, member) => Some((user, member.as_ref())),
_ => None,
}
} else {
None
}
}) })
.expect("Target user should be present"); .expect("Target user is a required field; should be present");
let use_bigger = options let use_bigger = options
.iter() .iter()
.find_map(|opt| { .find_map(|opt| match (opt.name, &opt.value) {
if opt.name == "bigger" { ("target", ResolvedValue::Boolean(v)) => Some(*v),
match &opt.value { _ => None,
ResolvedValue::Boolean(v) => Some(*v),
_ => None,
}
} else {
None
}
}) })
.unwrap_or(false); .unwrap_or(false);