2022-12-07 17:37:08 +00:00
|
|
|
#![allow(unused)]
|
2022-08-08 20:31:53 +00:00
|
|
|
#![warn(clippy::collapsible_str_replace)]
|
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
fn get_filter() -> char {
|
|
|
|
'u'
|
2022-08-08 20:31:53 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {
|
2022-08-14 16:33:55 +00:00
|
|
|
let d = 'd';
|
2022-08-08 20:31:53 +00:00
|
|
|
let p = 'p';
|
|
|
|
let s = 's';
|
|
|
|
let u = 'u';
|
|
|
|
let l = "l";
|
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let mut iter = ["l", "z"].iter();
|
|
|
|
|
2022-08-08 20:31:53 +00:00
|
|
|
// LINT CASES
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace(['s', 'u'], "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace(['s', 'u'], l);
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace(['s', 'u', 'p'], "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd"
|
|
|
|
.replace(['s', 'u', 'p', 'd'], "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo world".replace([s, 'u'], "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace([s, 'u', 'p'], "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace([s, u, 'p'], "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace([s, u, p], "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worlp".replace(['s', 'u'], "l").replace('p', "d");
|
|
|
|
|
|
|
|
let _ = "hesuo worpd".replace('s', "x").replace(['u', 'p'], "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
// Note: Future iterations could lint `replace(|c| matches!(c, "su" | 'd' | 'p'), "l")`
|
|
|
|
let _ = "hesudo worpd".replace("su", "l").replace(['d', 'p'], "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesudo worpd".replace([d, 'p'], "l").replace("su", "l");
|
|
|
|
|
|
|
|
let _ = "hesuo world".replace([get_filter(), 's'], "l");
|
|
|
|
|
|
|
|
// NO LINT CASES
|
|
|
|
let _ = "hesuo world".replace('s', "l").replace('u', "p");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace('s', "l").replace('p', l);
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesudo worpd".replace('d', "l").replace("su", "l").replace('p', "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
// Note: Future iterations of `collapsible_str_replace` might lint this and combine to `[s, u, p]`
|
|
|
|
let _ = "hesuo worpd".replace([s, u], "l").replace([u, p], "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace(['s', 'u'], "l").replace(['u', 'p'], "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace('s', "l").replace(['u', 'p'], "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace(['s', 'u', 'p'], "l").replace('r', "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace(['s', 'u', 'p'], l).replace('r', l);
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace(['s', u, 'p'], "l").replace('r', "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
let _ = "hesuo worpd".replace([s, u], "l").replace(p, "l");
|
2022-08-08 20:31:53 +00:00
|
|
|
|
2022-08-14 16:33:55 +00:00
|
|
|
// Regression test
|
|
|
|
let _ = "hesuo worpd"
|
|
|
|
.replace('u', iter.next().unwrap())
|
|
|
|
.replace('s', iter.next().unwrap());
|
2022-08-08 20:31:53 +00:00
|
|
|
}
|
2022-12-07 17:37:08 +00:00
|
|
|
|
|
|
|
#[clippy::msrv = "1.57"]
|
|
|
|
fn msrv_1_57() {
|
|
|
|
let _ = "".replace('a', "1.57").replace('b', "1.57");
|
|
|
|
}
|
|
|
|
|
|
|
|
#[clippy::msrv = "1.58"]
|
|
|
|
fn msrv_1_58() {
|
|
|
|
let _ = "".replace(['a', 'b'], "1.58");
|
|
|
|
}
|