summaryrefslogtreecommitdiffstats
path: root/src/failable/ops/or.rs
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2018-04-29 10:51:45 +0200
committerGitHub <noreply@github.com>2018-04-29 10:51:45 +0200
commita174b5c3b09cd232347dcdb5448324c225c0433d (patch)
tree32213b67883891866a51c38f17e4ff46e26e2d9a /src/failable/ops/or.rs
parentb531c50e550d05c95ea02370ba02c0535a4ef5f5 (diff)
parent68df53a1467f0dd9c37114cdb7980783fb1fa3a0 (diff)
Merge pull request #28 from matthiasbeyer/failable-filters-output-error
Make error type associated
Diffstat (limited to 'src/failable/ops/or.rs')
-rw-r--r--src/failable/ops/or.rs10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/failable/ops/or.rs b/src/failable/ops/or.rs
index 45289c3..b482e63 100644
--- a/src/failable/ops/or.rs
+++ b/src/failable/ops/or.rs
@@ -24,11 +24,13 @@ impl<T, U> FailableOr<T, U> {
}
-impl<N, E, T, U> FailableFilter<N, E> for FailableOr<T, U>
- where T: FailableFilter<N, E>,
- U: FailableFilter<N, E>
+impl<N, T, U, E> FailableFilter<N> for FailableOr<T, U>
+ where T: FailableFilter<N, Error = E>,
+ U: FailableFilter<N, Error = E>
{
- fn filter(&self, e: &N) -> Result<bool, E> {
+ type Error = E;
+
+ fn filter(&self, e: &N) -> Result<bool, Self::Error> {
Ok(try!(self.0.filter(e)) || try!(self.1.filter(e)))
}
}