mirror of
https://github.com/achanda/ipnetwork.git
synced 2025-06-17 17:28:51 +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> {
|
||||
let mask = prefix
|
||||
.parse::<u8>()
|
||||
.map_err(|_| IpNetworkError::InvalidPrefix)?;
|
||||
if mask > max {
|
||||
Err(IpNetworkError::InvalidPrefix)
|
||||
} else {
|
||||
Ok(mask)
|
||||
}
|
||||
prefix
|
||||
.parse()
|
||||
.map_err(|_| IpNetworkError::InvalidPrefix)
|
||||
.and_then(|mask| {
|
||||
if mask > max {
|
||||
Err(IpNetworkError::InvalidPrefix)
|
||||
} else {
|
||||
Ok(mask)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
Reference in New Issue
Block a user