@@ -27,6 +27,18 @@ use slice;
27
27
///
28
28
/// [`SocketAddrV4`]: ../../std/net/struct.SocketAddrV4.html
29
29
/// [`SocketAddrV6`]: ../../std/net/struct.SocketAddrV6.html
30
+ ///
31
+ /// # Examples
32
+ ///
33
+ /// ```
34
+ /// use std::net::{IpAddr, Ipv4Addr, SocketAddr};
35
+ ///
36
+ /// let socket = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(127, 0, 0, 1)), 8080);
37
+ ///
38
+ /// assert_eq!("127.0.0.1:8080".parse(), Ok(socket));
39
+ /// assert_eq!(socket.port(), 8080);
40
+ /// assert_eq!(socket.is_ipv4(), true);
41
+ /// ```
30
42
#[ derive( Copy , Clone , PartialEq , Eq , Hash , Debug ) ]
31
43
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
32
44
pub enum SocketAddr {
@@ -48,6 +60,18 @@ pub enum SocketAddr {
48
60
/// [IETF RFC 793]: https://tools.ietf.org/html/rfc793
49
61
/// [IPv4 address]: ../../std/net/struct.Ipv4Addr.html
50
62
/// [`SocketAddr`]: ../../std/net/enum.SocketAddr.html
63
+ ///
64
+ /// # Examples
65
+ ///
66
+ /// ```
67
+ /// use std::net::{Ipv4Addr, SocketAddrV4};
68
+ ///
69
+ /// let socket = SocketAddrV4::new(Ipv4Addr::new(127, 0, 0, 1), 8080);
70
+ ///
71
+ /// assert_eq!("127.0.0.1:8080".parse(), Ok(socket));
72
+ /// assert_eq!(socket.ip(), &Ipv4Addr::new(127, 0, 0, 1));
73
+ /// assert_eq!(socket.port(), 8080);
74
+ /// ```
51
75
#[ derive( Copy ) ]
52
76
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
53
77
pub struct SocketAddrV4 { inner : c:: sockaddr_in }
@@ -63,6 +87,18 @@ pub struct SocketAddrV4 { inner: c::sockaddr_in }
63
87
/// [IETF RFC 2553, Section 3.3]: https://tools.ietf.org/html/rfc2553#section-3.3
64
88
/// [IPv6 address]: ../../std/net/struct.Ipv6Addr.html
65
89
/// [`SocketAddr`]: ../../std/net/enum.SocketAddr.html
90
+ ///
91
+ /// # Examples
92
+ ///
93
+ /// ```
94
+ /// use std::net::{Ipv6Addr, SocketAddrV6};
95
+ ///
96
+ /// let socket = SocketAddrV6::new(Ipv6Addr::new(0x2001, 0xdb8, 0, 0, 0, 0, 0, 1), 8080, 0, 0);
97
+ ///
98
+ /// assert_eq!("[2001:db8::1]:8080".parse(), Ok(socket));
99
+ /// assert_eq!(socket.ip(), &Ipv6Addr::new(0x2001, 0xdb8, 0, 0, 0, 0, 0, 1));
100
+ /// assert_eq!(socket.port(), 8080);
101
+ /// ```
66
102
#[ derive( Copy ) ]
67
103
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
68
104
pub struct SocketAddrV6 { inner : c:: sockaddr_in6 }
0 commit comments