aboutsummaryrefslogtreecommitdiff
path: root/ctr-std/src/net/parser.rs
diff options
context:
space:
mode:
authorFenrirWolf <[email protected]>2018-04-21 16:39:03 -0600
committerGitHub <[email protected]>2018-04-21 16:39:03 -0600
commit159b5b9e62ce074bbbd1900137670a9f5426a8bd (patch)
tree4fecd0ca00b754c494e96b13e9837db48de93109 /ctr-std/src/net/parser.rs
parentMove more implementation details to `imp` module (diff)
parentUpdate for Rust nightly 2018-04-19 (diff)
downloadctru-rs-159b5b9e62ce074bbbd1900137670a9f5426a8bd.tar.xz
ctru-rs-159b5b9e62ce074bbbd1900137670a9f5426a8bd.zip
Merge pull request #64 from FenrirWolf/nightly-update
Update for Rust nightly 2018-04-19
Diffstat (limited to 'ctr-std/src/net/parser.rs')
-rw-r--r--ctr-std/src/net/parser.rs19
1 files changed, 19 insertions, 0 deletions
diff --git a/ctr-std/src/net/parser.rs b/ctr-std/src/net/parser.rs
index 261d44e..ae5037c 100644
--- a/ctr-std/src/net/parser.rs
+++ b/ctr-std/src/net/parser.rs
@@ -372,6 +372,25 @@ impl FromStr for SocketAddr {
/// [`IpAddr`], [`Ipv4Addr`], [`Ipv6Addr`], [`SocketAddr`], [`SocketAddrV4`], and
/// [`SocketAddrV6`].
///
+/// # Potential causes
+///
+/// `AddrParseError` may be thrown because the provided string does not parse as the given type,
+/// often because it includes information only handled by a different address type.
+///
+/// ```should_panic
+/// use std::net::IpAddr;
+/// let _foo: IpAddr = "127.0.0.1:8080".parse().expect("Cannot handle the socket port");
+/// ```
+///
+/// [`IpAddr`] doesn't handle the port. Use [`SocketAddr`] instead.
+///
+/// ```
+/// use std::net::SocketAddr;
+///
+/// // No problem, the `panic!` message has disappeared.
+/// let _foo: SocketAddr = "127.0.0.1:8080".parse().expect("unreachable panic");
+/// ```
+///
/// [`FromStr`]: ../../std/str/trait.FromStr.html
/// [`IpAddr`]: ../../std/net/enum.IpAddr.html
/// [`Ipv4Addr`]: ../../std/net/struct.Ipv4Addr.html