diff options
| author | Daniel Schadt <kingdread@gmx.de> | 2020-08-17 14:52:11 +0200 | 
|---|---|---|
| committer | Daniel Schadt <kingdread@gmx.de> | 2020-08-17 14:52:11 +0200 | 
| commit | 0585e43fa82a359e768815394b493801773feb0c (patch) | |
| tree | a7b638e4040079668305264120efc82a58b4bce1 | |
| parent | cb4ade7710f6fa171130edeeabfa2db2fb1c526b (diff) | |
| download | evtclib-0585e43fa82a359e768815394b493801773feb0c.tar.gz evtclib-0585e43fa82a359e768815394b493801773feb0c.tar.bz2 evtclib-0585e43fa82a359e768815394b493801773feb0c.zip | |
add Log::errors convenience method
| -rw-r--r-- | CHANGELOG.md | 3 | ||||
| -rw-r--r-- | examples/loginfo.rs | 4 | ||||
| -rw-r--r-- | src/lib.rs | 16 | 
3 files changed, 23 insertions, 0 deletions
| diff --git a/CHANGELOG.md b/CHANGELOG.md index c7c6b4b..3450b48 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,9 @@  All notable changes to this project will be documented in this file.  ## Unreleased +### Added +- `Log::errors` as a convenience function. +  ### Fixed  - Fixed the conversion from `CBTS_ERROR` to `EventKind::Error` not having the    correct text. diff --git a/examples/loginfo.rs b/examples/loginfo.rs index 927ff52..978fede 100644 --- a/examples/loginfo.rs +++ b/examples/loginfo.rs @@ -36,4 +36,8 @@ fn main() {      }      println!("Number of recorded events: {}", log.events().len()); + +    for error in log.errors() { +        println!("Error in log: {}", error); +    }  } @@ -897,4 +897,20 @@ impl Log {              }          })      } + +    /// Returns all error strings that were captured. +    /// +    /// If no errors were encountered, an empty vec is returned. +    /// +    /// Note that those are errors reported verbatim by arcdps, nothing that evtclib +    /// produces/interprets. +    pub fn errors(&self) -> Vec<&str> { +        self.events().iter().filter_map(|e| { +            if let EventKind::Error { ref text } = e.kind() { +                Some(text as &str) +            } else { +                None +            } +        }).collect() +    }  } | 
