Hide secrets from logs.
You might ask: "A crate, for a simple feature like this?". Yes, maybe this type will be shared between crates. Compared to multiple different types in different crates.
hide = "0.1
use hide::Hide;
#[derive(Debug)]
pub struct MyStruct {
username: String,
password: Hide<String>,
}
fn example1() {
let data = MyStruct {
username: "user".to_string(),
password: "password".to_string().into(),
};
println!("{data:#?}");
}
Will give you:
MyStruct {
username: "user",
password: ***,
}