libax 0.1.1

Helper functions for cbax projects
Documentation
use std::net::Ipv4Addr;

pub trait ToIpv4 {
    fn to_ipv4(self) -> Ipv4Addr;
}

impl ToIpv4 for u32 {
    fn to_ipv4(self) -> Ipv4Addr {
        return Ipv4Addr::from(self);
    }
}

pub trait Tou32 {
    fn to_u32(self) -> u32;
}

impl Tou32 for Ipv4Addr {
    fn to_u32(self) -> u32 {
        return self.into();
    }
}

#[cfg(test)]
mod tests {
    use super::*;

    #[test]
    fn u32_to_ipv4() {
        let ip: Ipv4Addr = 123456789.to_ipv4();
        assert_eq!(ip, Ipv4Addr::new(7, 91, 205, 21));
    }
    #[test]
    fn ipv4_to_u32() {
        let num: u32 = Ipv4Addr::new(7, 91, 205, 21).to_u32();
        assert_eq!(num, 123456789);
    }
}