even_or_odd/
lib.rs

1/// Returns a bool that indicates whether or not number is even. 
2/// 
3/// # Examples
4/// ```
5/// let number = 5;
6/// if is_even(number) {
7///     println!("{number} is even.")
8/// } else {
9///     println!("{number} is not even.")
10/// }
11/// ```
12pub fn is_even<T> (number: T) -> bool where 
13    T:
14        std::ops::Rem<Output = T> +
15        std::cmp::PartialEq<T> +
16        From<u8>
17{
18    number % T::from(2) == T::from(0)
19}
20
21/// Returns a bool that indicates whether or not number is odd. 
22/// 
23/// # Examples
24/// ```
25/// let number = 5;
26/// if is_odd(number) {
27///     println!("{number} is odd.")
28/// } else {
29///     println!("{number} is not odd.")
30/// }
31/// ```
32pub fn is_odd<T> (number: T) -> bool where 
33    T:
34        std::ops::Rem<Output = T> +
35        std::cmp::PartialEq<T> +
36        From<u8>
37{
38    number % T::from(2) != T::from(0)
39}