diff options
author | Matthias Beyer <mail@beyermatthias.de> | 2016-08-23 11:29:54 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-08-23 11:29:54 +0200 |
commit | ef94a396ccc491ddc9dd734aba15540d7a9ea53e (patch) | |
tree | a05510705c29fa2a496b108a7acb84272f4de8f9 | |
parent | 38c6766d91359f8eba5e1106c304b23b287de043 (diff) | |
parent | 84ee25b1f98ea4c51d48c9bc796eb8dc7ed54071 (diff) |
Merge pull request #7 from matthiasbeyer/xor-impl
Minify the XOr implementation
-rw-r--r-- | src/ops/xor.rs | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/src/ops/xor.rs b/src/ops/xor.rs index 42591d4..32f264b 100644 --- a/src/ops/xor.rs +++ b/src/ops/xor.rs @@ -23,10 +23,7 @@ impl<T, U> XOr<T, U> { impl<I, T: Filter<I>, U: Filter<I>> Filter<I> for XOr<T, U> { fn filter(&self, e: &I) -> bool { - let a = self.a.filter(e); - let b = self.b.filter(e); - - (a && !b) || (!a && b) + self.a.filter(e) ^ self.b.filter(e) } } |