Expand description
A Serde deserializer which transparently loads files as string values.
§Usage
Assume we have a /mnt/secrets/my_secret
file that looks like:
hunter2
And a conf/config.json
that looks like:
{
"secret_value": "${file:/mnt/secrets/my_secret}"
}
use std::{fs, io, path::Path};
use serde::Deserialize;
#[derive(Deserialize)]
struct Config {
secret_value: String,
}
let config = fs::read("conf/config.json").unwrap();
let mut deserializer = serde_json::Deserializer::from_slice(&config);
let config: Config = serde_file_value::deserialize(&mut deserializer, |_, _| ()).unwrap();
assert_eq!(config.secret_value, "hunter2");
Structs§
- Deserializer
- A deserializer which automatically reads referenced files.
Functions§
- deserialize
- Entry point.