diff options
author | rabite <rabite@posteo.de> | 2019-03-02 19:39:24 +0100 |
---|---|---|
committer | rabite <rabite@posteo.de> | 2019-03-02 23:28:03 +0100 |
commit | eb5a86b7cd37dc39d20f6ce122f671f94f51b75a (patch) | |
tree | a60e83dca33a46ebcc367dbfe98c2e8250210289 /src/fail.rs | |
parent | e2acef5ddfa5c7bf470aee5e24f429eabfb17951 (diff) |
moved window stuff to widget itself
Diffstat (limited to 'src/fail.rs')
-rw-r--r-- | src/fail.rs | 35 |
1 files changed, 30 insertions, 5 deletions
diff --git a/src/fail.rs b/src/fail.rs index ff9ad2e..1c0575b 100644 --- a/src/fail.rs +++ b/src/fail.rs @@ -1,5 +1,6 @@ use failure; use failure::Fail; +use failure::Backtrace; use std::path::PathBuf; @@ -28,21 +29,45 @@ pub enum HError { #[fail(display = "Was None!")] NoneError, #[fail(display = "Not ready yet!")] - WillBeNotReady, + WillBeNotReady(Backtrace), #[fail(display = "No widget found")] - NoWidgetError, + NoWidgetError(Backtrace), #[fail(display = "Path: {:?} not in this directory: {:?}", path, dir)] WrongDirectoryError{ path: PathBuf, dir: PathBuf }, #[fail(display = "Widget finnished")] PopupFinnished, - #[fail(display = "Input finnished")] - InputFinnished, #[fail(display = "No completions found")] NoCompletionsError, #[fail(display = "No more history")] - NoHistoryError + NoHistoryError, + #[fail(display = "No core for widget")] + NoWidgetCoreError(Backtrace), + #[fail(display = "No header for widget")] + NoHeaderError, } +pub trait ErrorLog where Self: Sized { + fn log(self) {} +} + +impl<T> ErrorLog for HResult<T> { + fn log(self) { + if let Err(err) = self { + eprintln!("{:?}", err); + } + } +} + + + + +// impl From<&HError> for HError { +// fn from(error: &HError) -> Self { +// dbg!(&error); +// (error.clone()) +// } +// } + impl From<std::io::Error> for HError { fn from(error: std::io::Error) -> Self { dbg!(&error); |