1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#![allow(unused)]
macro_rules! impl_partial_eq {
($id:ident) => {
impl ::cmp::PartialEq<$id> for $id {
#[inline]
fn eq(&self, other: &Self) -> bool {
$id::eq(*self, *other).all()
}
#[inline]
fn ne(&self, other: &Self) -> bool {
$id::ne(*self, *other).all()
}
}
};
}
#[cfg(test)]
macro_rules! test_partial_eq {
($id:ident, $true:expr, $false:expr) => {
#[test]
fn partial_eq() {
use coresimd::simd::*;
let a = $id::splat($false);
let b = $id::splat($true);
assert!(a != b);
assert!(!(a == b));
assert!(a == a);
assert!(!(a != a));
}
};
}