Fix libimagdiary for new toml interface

This commit is contained in:
Matthias Beyer 2017-05-30 21:05:13 +02:00
parent eacc6777b8
commit 50c4c16aaf
3 changed files with 7 additions and 3 deletions

View file

@ -18,6 +18,7 @@ chrono = "0.2"
log = "0.3"
semver = "0.5"
toml = "0.4.*"
toml-query = "0.1.*"
regex = "0.1"
lazy_static = "0.2"
itertools = "0.5"

View file

@ -21,11 +21,13 @@ use toml::Value;
use libimagrt::runtime::Runtime;
use toml_query::read::TomlValueReadExt;
pub fn get_default_diary_name(rt: &Runtime) -> Option<String> {
get_diary_config_section(rt)
.and_then(|config| {
match config.lookup("default_diary") {
Some(&Value::String(ref s)) => Some(s.clone()),
match config.read(&String::from("default_diary")) {
Ok(&Value::String(ref s)) => Some(s.clone()),
_ => None,
}
})
@ -34,5 +36,5 @@ pub fn get_default_diary_name(rt: &Runtime) -> Option<String> {
pub fn get_diary_config_section<'a>(rt: &'a Runtime) -> Option<&'a Value> {
rt.config()
.map(|config| config.config())
.and_then(|config| config.lookup("diary"))
.and_then(|config| config.read(&String::from("diary")).ok())
}

View file

@ -38,6 +38,7 @@ extern crate chrono;
#[macro_use] extern crate lazy_static;
extern crate semver;
extern crate toml;
extern crate toml_query;
extern crate regex;
extern crate itertools;