in src/storage.rs [2753:2775]
fn load_toml<T>(file_name: &str, reader: impl Read) -> Result<(SourceFile, T), LoadTomlError>
where
T: for<'a> Deserialize<'a>,
{
let mut reader = BufReader::new(reader);
let mut string = String::new();
reader.read_to_string(&mut string)?;
let source_code = SourceFile::new(file_name, string);
let result = toml::de::from_str(source_code.source());
match result {
Ok(toml) => Ok((source_code, toml)),
Err(error) => {
let (line, col) = error.line_col().unwrap_or((0, 0));
let span = SourceOffset::from_location(source_code.source(), line + 1, col);
Err(TomlParseError {
source_code,
span,
error,
}
.into())
}
}
}