summaryrefslogtreecommitdiff
path: root/cli/tools/repl
diff options
context:
space:
mode:
authorDavid Sherret <dsherret@users.noreply.github.com>2023-03-15 17:46:36 -0400
committerGitHub <noreply@github.com>2023-03-15 17:46:36 -0400
commitfb021d7ceff3f8b1d7cdb0c2bdd75ea07c0428d2 (patch)
tree09cb2bf87bba760b1abf706e0b8faedc9c368bbc /cli/tools/repl
parentca51f4f6c058d16ac438ad75ac92e8954895f5aa (diff)
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
Diffstat (limited to 'cli/tools/repl')
-rw-r--r--cli/tools/repl/editor.rs7
1 files changed, 3 insertions, 4 deletions
diff --git a/cli/tools/repl/editor.rs b/cli/tools/repl/editor.rs
index c9f019305..bf38573f4 100644
--- a/cli/tools/repl/editor.rs
+++ b/cli/tools/repl/editor.rs
@@ -167,12 +167,11 @@ fn is_word_boundary(c: char) -> bool {
}
fn get_expr_from_line_at_pos(line: &str, cursor_pos: usize) -> &str {
- let start = line[..cursor_pos]
- .rfind(is_word_boundary)
- .map_or_else(|| 0, |i| i);
+ let start = line[..cursor_pos].rfind(is_word_boundary).unwrap_or(0);
let end = line[cursor_pos..]
.rfind(is_word_boundary)
- .map_or_else(|| cursor_pos, |i| cursor_pos + i);
+ .map(|i| cursor_pos + i)
+ .unwrap_or(cursor_pos);
let word = &line[start..end];
let word = word.strip_prefix(is_word_boundary).unwrap_or(word);