This commit is contained in:
kageru 2019-10-31 11:45:16 +01:00
parent 8157ab760d
commit 34de761858
Signed by: kageru
GPG Key ID: 8282A2BEA4ADA3D2
4 changed files with 10 additions and 11 deletions

View File

@ -9,7 +9,7 @@ pub fn query_apt(ctx: Context, msg: Message, args: Vec<&str>) {
&format!("https://sources.debian.org/api/src/{}/", &query),
|_e| EMPTY_RESULT,
);
if response.versions.len() == 0 {
if response.versions.is_empty() {
send(msg.channel_id, "No results", &ctx);
return;
}
@ -24,7 +24,7 @@ fn convert_versions(res: Response) -> Vec<Package> {
packages.push(Package {
area: version.area.clone(),
name: res.package.clone(),
suite: suite,
suite,
version: version.version.clone(),
});
}

View File

@ -24,14 +24,13 @@ impl EventHandler for Handler {
if msg.content.starts_with(PREFIX) {
if let Some(command) = COMMANDS
.iter()
.filter(|&c| msg.content.starts_with(&c.trigger))
.next()
.find(|&c| msg.content.starts_with(&c.trigger))
{
let content = msg.content.clone();
let mut args = content.split_whitespace().collect::<Vec<_>>();
// the prefix + trigger
args.remove(0);
if args.len() == 0 {
if args.is_empty() {
send(
msg.channel_id,
"Error: expected at least 1 additional argument",
@ -72,13 +71,13 @@ pub fn send(target: ChannelId, message: &str, ctx: &Context) {
}
}
pub fn respond_with_results<T: fmt::Display>(target: ChannelId, results: &Vec<T>, ctx: &Context) {
pub fn respond_with_results<T: fmt::Display>(target: ChannelId, results: &[T], ctx: &Context) {
send(
target,
&format!(
"```{}```",
results
.into_iter()
.iter()
.take(5)
.map(|p| format!("{}\n", p))
.collect::<String>()
@ -88,7 +87,7 @@ pub fn respond_with_results<T: fmt::Display>(target: ChannelId, results: &Vec<T>
}
pub fn search<T: DeserializeOwned>(url: &str, fallback: impl Fn(reqwest::Error) -> T) -> T {
return search_inner(url).unwrap_or_else(fallback);
search_inner(url).unwrap_or_else(fallback)
}
fn search_inner<T: DeserializeOwned>(url: &str) -> Result<T, reqwest::Error> {

View File

@ -10,7 +10,7 @@ pub fn query_nix(ctx: Context, msg: Message, args: Vec<&str>) {
// we know for sure that there’s at least one element here
let query = args[0];
match NIX_PACKAGES.packages.get(query) {
Some(result) => respond_with_results(msg.channel_id, &vec![result], &ctx),
Some(result) => respond_with_results(msg.channel_id, &[result], &ctx),
None => send(msg.channel_id, "No results", &ctx),
}
}

View File

@ -14,7 +14,7 @@ pub fn query_pacman(ctx: Context, msg: Message, args: Vec<&str>) {
|_e| EMPTY_RESULT,
);
// this is 1 for most packages and 2 if there’s a second version in testing
if response.results.len() != 0 {
if response.results.is_empty() {
respond_with_results(msg.channel_id, &response.results, &ctx);
return;
}
@ -27,7 +27,7 @@ pub fn query_pacman(ctx: Context, msg: Message, args: Vec<&str>) {
),
|_e| EMPTY_RESULT,
);
if response.results.len() == 0 {
if response.results.is_empty() {
send(msg.channel_id, "No results", &ctx);
return;
}