use crate::Pred;
use num_integer::Integer;
std_prelude!();
#[derive(Clone, Copy, Debug, Default)]
pub struct Even;
#[derive(Clone, Copy, Debug, Default)]
pub struct Odd;
impl<T: Integer> Pred<T> for Even {
fn accept(t: &T) -> bool {
t.is_even()
}
}
impl<T: Integer> Pred<T> for Odd {
fn accept(t: &T) -> bool {
t.is_odd()
}
}