about summary refs log tree commit diff
path: root/src/libstd/net
diff options
context:
space:
mode:
authorSean McArthur <sean.monstar@gmail.com>2017-01-28 12:54:09 -0800
committerSean McArthur <sean.monstar@gmail.com>2017-01-31 15:07:22 -0800
commitcd603e43241561edf9b2fa56a65a37afe20e8610 (patch)
tree135407daebad823edf8fe8eb6e726de2262a123f /src/libstd/net
parent87dcbcada247560d9ce5df28dd76034182e5b492 (diff)
downloadrust-cd603e43241561edf9b2fa56a65a37afe20e8610.tar.gz
rust-cd603e43241561edf9b2fa56a65a37afe20e8610.zip
add From<(I, u16)> for SocketAddr where I: Into<IpAddr>
Diffstat (limited to 'src/libstd/net')
-rw-r--r--src/libstd/net/addr.rs7
-rw-r--r--src/libstd/net/ip.rs4
2 files changed, 9 insertions, 2 deletions
diff --git a/src/libstd/net/addr.rs b/src/libstd/net/addr.rs
index 751878c687c..84c4acb8d92 100644
--- a/src/libstd/net/addr.rs
+++ b/src/libstd/net/addr.rs
@@ -456,6 +456,13 @@ impl From<SocketAddrV6> for SocketAddr {
     }
 }
 
+#[stable(feature = "addr_from_into_ip", since = "1.17.0")]
+impl<I: Into<IpAddr>> From<(I, u16)> for SocketAddr {
+    fn from(pieces: (I, u16)) -> SocketAddr {
+        SocketAddr::new(pieces.0.into(), pieces.1)
+    }
+}
+
 impl<'a> IntoInner<(*const c::sockaddr, c::socklen_t)> for &'a SocketAddr {
     fn into_inner(self) -> (*const c::sockaddr, c::socklen_t) {
         match *self {
diff --git a/src/libstd/net/ip.rs b/src/libstd/net/ip.rs
index cfd06dfcdd5..b6bd6f8d0a2 100644
--- a/src/libstd/net/ip.rs
+++ b/src/libstd/net/ip.rs
@@ -1183,8 +1183,8 @@ impl From<[u8; 16]> for IpAddr {
 
 #[stable(feature = "ip_from_slice", since = "1.17.0")]
 impl From<[u16; 8]> for IpAddr {
-    fn from(octets: [u16; 8]) -> IpAddr {
-        IpAddr::V6(Ipv6Addr::from(octets))
+    fn from(segments: [u16; 8]) -> IpAddr {
+        IpAddr::V6(Ipv6Addr::from(segments))
     }
 }