| #![warn(clippy::no_effect_replace)] |
| |
| fn main() { |
| let _ = "12345".replace('1', "1"); |
| //~^ ERROR: replacing text with itself |
| //~| NOTE: `-D clippy::no-effect-replace` implied by `-D warnings` |
| let _ = "12345".replace("12", "12"); |
| //~^ ERROR: replacing text with itself |
| let _ = String::new().replace("12", "12"); |
| //~^ ERROR: replacing text with itself |
| |
| let _ = "12345".replacen('1', "1", 1); |
| //~^ ERROR: replacing text with itself |
| let _ = "12345".replacen("12", "12", 1); |
| //~^ ERROR: replacing text with itself |
| let _ = String::new().replacen("12", "12", 1); |
| //~^ ERROR: replacing text with itself |
| |
| let _ = "12345".replace("12", "22"); |
| let _ = "12345".replacen("12", "22", 1); |
| |
| let mut x = X::default(); |
| let _ = "hello".replace(&x.f(), &x.f()); |
| //~^ ERROR: replacing text with itself |
| let _ = "hello".replace(&x.f(), &x.ff()); |
| |
| let _ = "hello".replace(&y(), &y()); |
| //~^ ERROR: replacing text with itself |
| let _ = "hello".replace(&y(), &z()); |
| |
| let _ = Replaceme.replace("a", "a"); |
| } |
| |
| #[derive(Default)] |
| struct X {} |
| |
| impl X { |
| fn f(&mut self) -> String { |
| "he".to_string() |
| } |
| |
| fn ff(&mut self) -> String { |
| "hh".to_string() |
| } |
| } |
| |
| fn y() -> String { |
| "he".to_string() |
| } |
| |
| fn z() -> String { |
| "hh".to_string() |
| } |
| |
| struct Replaceme; |
| impl Replaceme { |
| pub fn replace(&mut self, a: &str, b: &str) -> Self { |
| Self |
| } |
| } |