mirror of
https://github.com/icewind1991/warp-real-ip.git
synced 2026-06-03 18:54:06 +02:00
cleanup From impls
This commit is contained in:
parent
744e0ade89
commit
7b33c0d79d
1 changed files with 8 additions and 16 deletions
24
src/lib.rs
24
src/lib.rs
|
|
@ -1,4 +1,4 @@
|
||||||
use ipnetwork::{IpNetwork, Ipv4Network, Ipv6Network};
|
use ipnetwork::IpNetwork;
|
||||||
use rfc7239::{parse, Forwarded, NodeIdentifier, NodeName};
|
use rfc7239::{parse, Forwarded, NodeIdentifier, NodeName};
|
||||||
use std::borrow::Cow;
|
use std::borrow::Cow;
|
||||||
use std::convert::Infallible;
|
use std::convert::Infallible;
|
||||||
|
|
@ -23,27 +23,19 @@ impl IpNetworks {
|
||||||
|
|
||||||
impl From<Vec<IpAddr>> for IpNetworks {
|
impl From<Vec<IpAddr>> for IpNetworks {
|
||||||
fn from(addrs: Vec<IpAddr>) -> Self {
|
fn from(addrs: Vec<IpAddr>) -> Self {
|
||||||
addrs.iter().collect()
|
addrs.into_iter().collect()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl From<&Vec<IpAddr>> for IpNetworks {
|
impl From<&[IpAddr]> for IpNetworks {
|
||||||
fn from(addrs: &Vec<IpAddr>) -> Self {
|
fn from(addrs: &[IpAddr]) -> Self {
|
||||||
addrs.iter().collect()
|
addrs.iter().copied().collect()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<'a> FromIterator<&'a IpAddr> for IpNetworks {
|
impl FromIterator<IpAddr> for IpNetworks {
|
||||||
fn from_iter<T: IntoIterator<Item = &'a IpAddr>>(addrs: T) -> Self {
|
fn from_iter<T: IntoIterator<Item = IpAddr>>(addrs: T) -> Self {
|
||||||
addrs
|
addrs.into_iter().map(IpNetwork::from).collect()
|
||||||
.into_iter()
|
|
||||||
.map(|&addr| -> IpNetwork {
|
|
||||||
match addr {
|
|
||||||
IpAddr::V4(addr) => Ipv4Network::from(addr).into(),
|
|
||||||
IpAddr::V6(addr) => Ipv6Network::from(addr).into(),
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.collect()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue