diff options
| author | Steven Fackler <sfackler@gmail.com> | 2016-01-24 00:31:22 -0800 |
|---|---|---|
| committer | Steven Fackler <sfackler@gmail.com> | 2016-02-04 09:44:30 +0000 |
| commit | 7ea0abfb3557da792d3d743473463e26cf3aeebf (patch) | |
| tree | 4b52d0304d81a055f22d8d28adb178acbfa5b9b4 /src | |
| parent | 0486e12ad0661adcfdbd926dea17d7edfda419c1 (diff) | |
| download | rust-7ea0abfb3557da792d3d743473463e26cf3aeebf.tar.gz rust-7ea0abfb3557da792d3d743473463e26cf3aeebf.zip | |
Implement ToSocketAddrs for &[SocketAddr]
Diffstat (limited to 'src')
| -rw-r--r-- | src/libstd/net/addr.rs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/libstd/net/addr.rs b/src/libstd/net/addr.rs index 9382793b8be..c592bef4980 100644 --- a/src/libstd/net/addr.rs +++ b/src/libstd/net/addr.rs @@ -21,6 +21,8 @@ use option; use sys::net::netc as c; use sys_common::{FromInner, AsInner, IntoInner}; use vec; +use iter; +use slice; /// Representation of a socket address for networking applications. /// @@ -457,6 +459,15 @@ impl ToSocketAddrs for str { } } +#[stable(feature = "slice_to_socket_addrs", since = "1.8.0")] +impl<'a> ToSocketAddrs for &'a [SocketAddr] { + type Iter = iter::Cloned<slice::Iter<'a, SocketAddr>>; + + fn to_socket_addrs(&self) -> io::Result<Self::Iter> { + Ok(self.iter().cloned()) + } +} + #[stable(feature = "rust1", since = "1.0.0")] impl<'a, T: ToSocketAddrs + ?Sized> ToSocketAddrs for &'a T { type Iter = T::Iter; |
