У меня есть следующий файл YAML
version: '3'
indexed:
file1: "abc"
file2: "def"
file3: 33
Я прочитал это с этим кодом:
pub fn read_conf() -> Result<(), Box<dyn Error>>{
let f = File::open(".\\src\\conf.yaml")?;
let d: Mapping = from_reader(f)?;
let value = d.get(&Value::String("version".into())).unwrap();
println!("{:?}", value.as_str().unwrap());
let value = d.get(&Value::String("indexed.file1".into())).unwrap();
println!("{:?}", value);
Ok(())
}
, что дает
"3"
thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', src\libcore\option.rs:345:21
Как мне создать экземпляр Value
, чтобы получить необходимое значение?