mirror of
https://github.com/achanda/ipnetwork.git
synced 2025-06-18 17:57:10 +00:00
Make parse_prefix more idiomatic
This commit is contained in:

committed by
Abhishek Chanda

parent
a42e9d9593
commit
ef3f536d48
@ -51,12 +51,14 @@ pub fn cidr_parts(cidr: &str) -> Result<(&str, Option<&str>), IpNetworkError> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub fn parse_prefix(prefix: &str, max: u8) -> Result<u8, IpNetworkError> {
|
pub fn parse_prefix(prefix: &str, max: u8) -> Result<u8, IpNetworkError> {
|
||||||
let mask = prefix
|
prefix
|
||||||
.parse::<u8>()
|
.parse()
|
||||||
.map_err(|_| IpNetworkError::InvalidPrefix)?;
|
.map_err(|_| IpNetworkError::InvalidPrefix)
|
||||||
if mask > max {
|
.and_then(|mask| {
|
||||||
Err(IpNetworkError::InvalidPrefix)
|
if mask > max {
|
||||||
} else {
|
Err(IpNetworkError::InvalidPrefix)
|
||||||
Ok(mask)
|
} else {
|
||||||
}
|
Ok(mask)
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user