From f2b72f4738ea6a57c79d36e25370d37c5edb098d Mon Sep 17 00:00:00 2001 From: Matthias Beyer Date: Fri, 12 Jan 2018 16:31:41 +0100 Subject: [PATCH] libimaghabit: Replace read with typed read --- lib/domain/libimaghabit/src/habit.rs | 8 ++++---- lib/domain/libimaghabit/src/instance.rs | 1 - lib/domain/libimaghabit/src/util.rs | 5 ++--- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/lib/domain/libimaghabit/src/habit.rs b/lib/domain/libimaghabit/src/habit.rs index 37bce217..fd6b9ff8 100644 --- a/lib/domain/libimaghabit/src/habit.rs +++ b/lib/domain/libimaghabit/src/habit.rs @@ -18,7 +18,7 @@ // use toml::Value; -use toml_query::read::TomlValueReadExt; +use toml_query::read::TomlValueReadTypeExt; use toml_query::insert::TomlValueInsertExt; use chrono::NaiveDateTime; use chrono::Local; @@ -217,9 +217,9 @@ impl HabitTemplate for Entry { fn habit_until_date(&self) -> Result> { self.get_header() - .read("habit.template.until")? - .map(|v| v.as_str().map(String::from)) - .ok_or(HEK::HeaderTypeError("habit.template.until", "String").into()) + .read_string("habit.template.until") + .map_err(From::from) + .map(|os| os.map(String::from)) } fn instance_id_for(habit_name: &String, habit_date: &NaiveDate) -> Result { diff --git a/lib/domain/libimaghabit/src/instance.rs b/lib/domain/libimaghabit/src/instance.rs index 1b66f04a..578cc91b 100644 --- a/lib/domain/libimaghabit/src/instance.rs +++ b/lib/domain/libimaghabit/src/instance.rs @@ -19,7 +19,6 @@ use chrono::NaiveDate; use toml::Value; -use toml_query::read::TomlValueReadExt; use toml_query::set::TomlValueSetExt; use error::*; diff --git a/lib/domain/libimaghabit/src/util.rs b/lib/domain/libimaghabit/src/util.rs index 3598bedf..72caf25b 100644 --- a/lib/domain/libimaghabit/src/util.rs +++ b/lib/domain/libimaghabit/src/util.rs @@ -93,11 +93,10 @@ impl IsHabitCheck for Entry { #[inline] pub fn get_string_header_from_entry(e: &Entry, path: &'static str) -> Result { use error::HabitErrorKind as HEK; - use toml_query::read::TomlValueReadExt; + use toml_query::read::TomlValueReadTypeExt; e.get_header() - .read(path)? + .read_string(path)? .ok_or(HEK::HeaderFieldMissing(path).into()) - .and_then(|o| o.as_str().map(String::from).ok_or(HEK::HeaderTypeError(path, "String").into())) }