summaryrefslogtreecommitdiffstats
path: root/src/tools/clippy/tests/ui/inefficient_to_string.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/clippy/tests/ui/inefficient_to_string.rs')
-rw-r--r--src/tools/clippy/tests/ui/inefficient_to_string.rs31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/tools/clippy/tests/ui/inefficient_to_string.rs b/src/tools/clippy/tests/ui/inefficient_to_string.rs
new file mode 100644
index 000000000..acdc55aa0
--- /dev/null
+++ b/src/tools/clippy/tests/ui/inefficient_to_string.rs
@@ -0,0 +1,31 @@
+// run-rustfix
+#![deny(clippy::inefficient_to_string)]
+
+use std::borrow::Cow;
+
+fn main() {
+ let rstr: &str = "hello";
+ let rrstr: &&str = &rstr;
+ let rrrstr: &&&str = &rrstr;
+ let _: String = rstr.to_string();
+ let _: String = rrstr.to_string();
+ let _: String = rrrstr.to_string();
+
+ let string: String = String::from("hello");
+ let rstring: &String = &string;
+ let rrstring: &&String = &rstring;
+ let rrrstring: &&&String = &rrstring;
+ let _: String = string.to_string();
+ let _: String = rstring.to_string();
+ let _: String = rrstring.to_string();
+ let _: String = rrrstring.to_string();
+
+ let cow: Cow<'_, str> = Cow::Borrowed("hello");
+ let rcow: &Cow<'_, str> = &cow;
+ let rrcow: &&Cow<'_, str> = &rcow;
+ let rrrcow: &&&Cow<'_, str> = &rrcow;
+ let _: String = cow.to_string();
+ let _: String = rcow.to_string();
+ let _: String = rrcow.to_string();
+ let _: String = rrrcow.to_string();
+}