summaryrefslogtreecommitdiffstats
path: root/src/log/parser.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/log/parser.rs')
-rw-r--r--src/log/parser.rs11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/log/parser.rs b/src/log/parser.rs
index 6dcb9e3..764b732 100644
--- a/src/log/parser.rs
+++ b/src/log/parser.rs
@@ -38,16 +38,19 @@ where
pub struct ParsedLog(Vec<LogItem>);
-impl ParsedLog {
- pub fn build_from<S: AsRef<str>>(s: S) -> Result<Self> {
+impl FromStr for ParsedLog {
+ type Err = anyhow::Error;
+
+ fn from_str(s: &str) -> Result<Self> {
let p = parser();
- s.as_ref()
- .lines()
+ s.lines()
.map(|line| p.parse(line.as_bytes()).map_err(Error::from))
.collect::<Result<Vec<_>>>()
.map(ParsedLog)
}
+}
+impl ParsedLog {
pub fn is_successfull(&self) -> Option<bool> {
self.0
.iter()