refactor: remove usages of map_or / map_or_else (#18212)

These methods are confusing because the arguments are backwards. I feel
like they should have never been added to `Option<T>` and that clippy
should suggest rewriting to
`map(...).unwrap_or(...)`/`map(...).unwrap_or_else(|| ...)`

https://github.com/rust-lang/rfcs/issues/1025
This commit is contained in:
David Sherret 2023-03-15 17:46:36 -04:00 committed by GitHub
parent ca51f4f6c0
commit fb021d7cef
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
21 changed files with 179 additions and 141 deletions

View file

@ -452,14 +452,11 @@ pub fn parse(
path = String::new();
}
let name = name.map_or_else(
|| {
let default = StringOrNumber::Number(key);
key += 1;
default
},
StringOrNumber::String,
);
let name = name.map(StringOrNumber::String).unwrap_or_else(|| {
let default = StringOrNumber::Number(key);
key += 1;
default
});
let prefix = if prefix.is_empty() {
None
} else {
@ -498,8 +495,10 @@ pub fn parse(
must_consume(&TokenType::Close, &mut tokens)?;
let name = maybe_name.clone().map_or_else(
|| {
let name = maybe_name
.clone()
.map(StringOrNumber::String)
.unwrap_or_else(|| {
if maybe_pattern.is_some() {
let default = StringOrNumber::Number(key);
key += 1;
@ -507,9 +506,7 @@ pub fn parse(
} else {
StringOrNumber::String("".to_string())
}
},
StringOrNumber::String,
);
});
let pattern = if maybe_name.is_some() && maybe_pattern.is_none() {
default_pattern.clone()
} else {
@ -570,11 +567,13 @@ pub fn tokens_to_regex(
let prefix = key
.prefix
.clone()
.map_or_else(|| "".to_string(), |s| escape_string(&s));
.map(|s| escape_string(&s))
.unwrap_or_default();
let suffix = key
.suffix
.clone()
.map_or_else(|| "".to_string(), |s| escape_string(&s));
.map(|s| escape_string(&s))
.unwrap_or_default();
if !key.pattern.is_empty() {
if !prefix.is_empty() || !suffix.is_empty() {