mirror of
https://github.com/rust-lang/rust.git
synced 2026-04-27 18:57:42 +03:00
145 lines
4.0 KiB
Rust
145 lines
4.0 KiB
Rust
//@no-rustfix
|
|
#![warn(clippy::format_push_string)]
|
|
|
|
mod issue9493 {
|
|
pub fn u8vec_to_hex(vector: &Vec<u8>, upper: bool) -> String {
|
|
let mut hex = String::with_capacity(vector.len() * 2);
|
|
for byte in vector {
|
|
hex += &(if upper {
|
|
format!("{byte:02X}")
|
|
//~^ format_push_string
|
|
} else {
|
|
format!("{byte:02x}")
|
|
});
|
|
}
|
|
hex
|
|
}
|
|
|
|
pub fn other_cases() {
|
|
let mut s = String::new();
|
|
// if let
|
|
s += &(if let Some(_a) = Some(1234) {
|
|
format!("{}", 1234)
|
|
//~^ format_push_string
|
|
} else {
|
|
format!("{}", 1234)
|
|
});
|
|
// match
|
|
s += &(match Some(1234) {
|
|
Some(_) => format!("{}", 1234),
|
|
//~^ format_push_string
|
|
None => format!("{}", 1234),
|
|
});
|
|
}
|
|
}
|
|
|
|
mod import_write {
|
|
mod push_str {
|
|
// TODO: suggest importing `std::fmt::Write`;
|
|
mod not_imported {
|
|
fn main(string: &mut String) {
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
}
|
|
|
|
// TODO: suggest importing the first time, but not again
|
|
mod not_imported_and_not_imported {
|
|
fn foo(string: &mut String) {
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
|
|
fn bar(string: &mut String) {
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
}
|
|
|
|
// TODO: suggest importing the first time, but not again
|
|
mod not_imported_and_imported {
|
|
fn foo(string: &mut String) {
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
|
|
fn bar(string: &mut String) {
|
|
use std::fmt::Write;
|
|
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
}
|
|
|
|
// TODO: suggest importing, but only for `bar`
|
|
mod imported_and_not_imported {
|
|
fn foo(string: &mut String) {
|
|
use std::fmt::Write;
|
|
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
|
|
fn bar(string: &mut String) {
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
}
|
|
}
|
|
|
|
mod add_assign {
|
|
// TODO: suggest importing `std::fmt::Write`;
|
|
mod not_imported {
|
|
fn main(string: &mut String) {
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
}
|
|
|
|
// TODO: suggest importing the first time, but not again
|
|
mod not_imported_and_not_imported {
|
|
fn foo(string: &mut String) {
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
|
|
fn bar(string: &mut String) {
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
}
|
|
|
|
// TODO: suggest importing the first time, but not again
|
|
mod not_imported_and_imported {
|
|
fn foo(string: &mut String) {
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
|
|
fn bar(string: &mut String) {
|
|
use std::fmt::Write;
|
|
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
}
|
|
|
|
// TODO: suggest importing, but only for `bar`
|
|
mod imported_and_not_imported {
|
|
fn foo(string: &mut String) {
|
|
use std::fmt::Write;
|
|
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
|
|
fn bar(string: &mut String) {
|
|
string.push_str(&format!("{:?}", 1234));
|
|
//~^ format_push_string
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
fn main() {}
|