RS.CLIPPY.INEFFICIENT_TO_STRING
Using `to_string` on `&&T` where `T: ToString`
This checker is a Clippy lint created by The Rust Project Contributors. The documentation shown here is a copy of the original documentation for: inefficient_to_string. Copyright ©2025 The Rust Team. All rights reserved.
What it does
Checks for usage of .to_string() on an &&T where
T implements ToString directly (like &&str or &&String).
Why is this bad?
This bypasses the specialized implementation of
ToString and instead goes through the more expensive string formatting
facilities.
Example
// Generic implementation for `T: Display` is used (slow)
["foo", "bar"].iter().map(|s| s.to_string());
// OK, the specialized impl is used
["foo", "bar"].iter().map(|&s| s.to_string());