References are meant to be optional...

This commit is contained in:
Jake Howard 2017-09-10 19:09:21 +01:00
parent 823c8bc1ad
commit 1b395a8f60
Signed by: jake
GPG key ID: 57AFB45680EDD477
2 changed files with 7 additions and 4 deletions

View file

@ -16,7 +16,7 @@ pub struct Config {
pub output: HashMap<String, PathBuf>,
pub title: String,
pub verbosity: u64,
pub references: References
pub references: Option<References>
}
#[derive(Debug, Serialize, Deserialize, Default, Clone)]

View file

@ -58,10 +58,13 @@ pub fn get_output_files(conf: Value) -> HashMap<String, PathBuf> {
return output_map;
}
pub fn get_references(config: Value) -> References {
pub fn get_references(config: Value) -> Option<References> {
if config.get("references").is_none() {
return None;
}
let references = config.get("references").unwrap();
return References {
return Some(References {
bibliography: resolve_path(references.get("bibliography").unwrap().as_str().unwrap().into()),
csl: unpack_csl(references.get("csl").unwrap().as_str().unwrap().into())
}
});
}