diff options
author | Matthias Beyer <mail@beyermatthias.de> | 2019-05-17 22:44:29 +0200 |
---|---|---|
committer | Matthias Beyer <mail@beyermatthias.de> | 2019-05-18 00:52:13 +0200 |
commit | c7f5420c1db61218a7e408685e65f672fc4520f6 (patch) | |
tree | 744448cdeda8698b0304c3af6dd753746b1ec298 | |
parent | 9f100f2f75bce5f9d009c5e960047a270ea28508 (diff) |
Change is_log() implementation to use kindflag utility
This patch changes the Log::is_log() implementation for Entry to use the
provide_kindflag_path!() infrastructure.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
-rw-r--r-- | lib/domain/libimaglog/Cargo.toml | 7 | ||||
-rw-r--r-- | lib/domain/libimaglog/src/lib.rs | 1 | ||||
-rw-r--r-- | lib/domain/libimaglog/src/log.rs | 8 |
3 files changed, 11 insertions, 5 deletions
diff --git a/lib/domain/libimaglog/Cargo.toml b/lib/domain/libimaglog/Cargo.toml index 650a56c9..af74dbb1 100644 --- a/lib/domain/libimaglog/Cargo.toml +++ b/lib/domain/libimaglog/Cargo.toml @@ -24,6 +24,7 @@ toml = "0.4" toml-query = "0.8" failure = "0.1" -libimagstore = { version = "0.10.0", path = "../../../lib/core/libimagstore" } -libimagerror = { version = "0.10.0", path = "../../../lib/core/libimagerror" } -libimagdiary = { version = "0.10.0", path = "../../../lib/domain/libimagdiary" } +libimagstore = { version = "0.10.0", path = "../../../lib/core/libimagstore" } +libimagerror = { version = "0.10.0", path = "../../../lib/core/libimagerror" } +libimagdiary = { version = "0.10.0", path = "../../../lib/domain/libimagdiary" } +libimagentryutil = { version = "0.10.0", path = "../../../lib/entry/libimagentryutil" } diff --git a/lib/domain/libimaglog/src/lib.rs b/lib/domain/libimaglog/src/lib.rs index b0af3a48..ca7e5765 100644 --- a/lib/domain/libimaglog/src/lib.rs +++ b/lib/domain/libimaglog/src/lib.rs @@ -41,6 +41,7 @@ extern crate toml_query; extern crate libimagdiary; extern crate libimagstore; +#[macro_use] extern crate libimagentryutil; pub mod log; diff --git a/lib/domain/libimaglog/src/log.rs b/lib/domain/libimaglog/src/log.rs index 9ec81935..78901cda 100644 --- a/lib/domain/libimaglog/src/log.rs +++ b/lib/domain/libimaglog/src/log.rs @@ -19,12 +19,14 @@ use libimagdiary::entry::DiaryEntry; use libimagstore::store::Entry; +use libimagentryutil::isa::Is; +use libimagentryutil::isa::IsKindHeaderPathProvider; use failure::Fallible as Result; use failure::Error; + use toml::Value; -use toml_query::read::TomlValueReadTypeExt; use toml_query::insert::TomlValueInsertExt; pub trait Log : DiaryEntry { @@ -32,9 +34,11 @@ pub trait Log : DiaryEntry { fn make_log_entry(&mut self) -> Result<()>; } +provide_kindflag_path!(pub IsLog, "log.is_log"); + impl Log for Entry { fn is_log(&self) -> Result<bool> { - self.get_header().read_bool("log.is_log").map(|v| v.unwrap_or(false)).map_err(Error::from) + self.is::<IsLog>().map_err(From::from) } fn make_log_entry(&mut self) -> Result<()> { |