perf: use of or followed by a function call

This commit is contained in:
CosminPerRam 2023-12-11 03:58:40 +02:00
parent 0aa498b30b
commit a4bc430868
2 changed files with 5 additions and 5 deletions

View file

@ -85,7 +85,7 @@ pub fn query_with_timeout_and_extra_settings(
&socket_addr, &socket_addr,
*engine, *engine,
extra_settings extra_settings
.or(Option::from(game.request_settings.clone())) .or_else(|| Option::from(game.request_settings.clone()))
.map(ExtraRequestSettings::into), .map(ExtraRequestSettings::into),
timeout_settings, timeout_settings,
) )

View file

@ -116,23 +116,23 @@ pub fn client_query<Client: QuakeClient>(
Ok(Response { Ok(Response {
name: server_vars name: server_vars
.remove("hostname") .remove("hostname")
.or(server_vars.remove("sv_hostname")) .or_else(|| server_vars.remove("sv_hostname"))
.ok_or(GDErrorKind::PacketBad)?, .ok_or(GDErrorKind::PacketBad)?,
map: server_vars map: server_vars
.remove("mapname") .remove("mapname")
.or(server_vars.remove("map")) .or_else(|| server_vars.remove("map"))
.ok_or(GDErrorKind::PacketBad)?, .ok_or(GDErrorKind::PacketBad)?,
players_online: players.len() as u8, players_online: players.len() as u8,
players_maximum: server_vars players_maximum: server_vars
.remove("maxclients") .remove("maxclients")
.or(server_vars.remove("sv_maxclients")) .or_else(|| server_vars.remove("sv_maxclients"))
.ok_or(GDErrorKind::PacketBad)? .ok_or(GDErrorKind::PacketBad)?
.parse() .parse()
.map_err(|e| TypeParse.context(e))?, .map_err(|e| TypeParse.context(e))?,
players, players,
game_version: server_vars game_version: server_vars
.remove("version") .remove("version")
.or(server_vars.remove("*version")), .or_else(|| server_vars.remove("*version")),
unused_entries: server_vars, unused_entries: server_vars,
}) })
} }