summaryrefslogtreecommitdiffstats
path: root/src/tools/clippy/tests/ui/inefficient_to_string.fixed
blob: 557f7fb73585d74e229650dd7b374b1a145a0c4e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
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();
}