diff --git a/src/ipv4.rs b/src/ipv4.rs index 9e02141..4ca54ad 100644 --- a/src/ipv4.rs +++ b/src/ipv4.rs @@ -190,14 +190,11 @@ impl FromStr for Ipv4Network { fn from_str(s: &str) -> Result { let (addr_str, prefix_str) = cidr_parts(s)?; let addr = parse_addr(addr_str)?; - let prefix = parse_prefix( - if prefix_str.is_empty() { - IPV4_BITS.to_string() - } else { - prefix_str - }, - IPV4_BITS, - )?; + let prefix = if prefix_str.is_empty() { + IPV4_BITS + }else { + parse_prefix(prefix_str, IPV4_BITS)? + }; Ipv4Network::new(addr, prefix) } } diff --git a/src/ipv6.rs b/src/ipv6.rs index d2818fc..c0819c9 100644 --- a/src/ipv6.rs +++ b/src/ipv6.rs @@ -170,14 +170,11 @@ impl FromStr for Ipv6Network { let (addr_str, prefix_str) = cidr_parts(s)?; let addr = Ipv6Addr::from_str(addr_str) .map_err(|_| IpNetworkError::InvalidAddr(addr_str.to_string()))?; - let prefix = parse_prefix( - if prefix_str.is_empty() { - IPV6_BITS.to_string() - } else { - prefix_str - }, - IPV6_BITS, - )?; + let prefix = if prefix_str.is_empty() { + IPV6_BITS + }else { + parse_prefix(prefix_str, IPV6_BITS)? + }; Ipv6Network::new(addr, prefix) } }