#[derive(EnvManDebug)]
{
// Attributes available to this derive:
#[envman]
}
Expand description
Derives Debug with masking support for fields marked with #[envman(secret)]
ยงExample
#[derive(EnvMan, EnvManDebug)]
struct Config {
username: String,
#[envman(secret)]
password: String,
#[envman(secret)]
api_key: String,
}
#[allow(unused_unsafe)]
unsafe {
std::env::set_var("USERNAME", "admin");
std::env::set_var("PASSWORD", "secret123");
std::env::set_var("API_KEY", "key_123456");
}
let config = Config::load_from_env().unwrap();
let debug_output = format!("{:?}", config);
assert!(debug_output.contains("username: \"admin\""));
assert!(debug_output.contains("password: \"***\""));
assert!(debug_output.contains("api_key: \"***\""));