]> git.lizzy.rs Git - rust.git/commitdiff
Implement Error for AddrParseError
authorSteven Fackler <sfackler@gmail.com>
Mon, 24 Aug 2015 06:00:18 +0000 (23:00 -0700)
committerSteven Fackler <sfackler@gmail.com>
Mon, 24 Aug 2015 06:00:18 +0000 (23:00 -0700)
Closes #27973

src/libstd/net/parser.rs

index b0fadb56f36ac7db9ff0a9c8dd6a77de80bf3b31..da6ee8cfdcfb31e1f6b8577fe1512421f859b95a 100644 (file)
 
 use prelude::v1::*;
 
-use str::FromStr;
+use error::Error;
+use fmt;
 use net::{IpAddr, Ipv4Addr, Ipv6Addr, SocketAddr, SocketAddrV4, SocketAddrV6};
+use str::FromStr;
 
 struct Parser<'a> {
     // parsing as ASCII, so can use byte array
@@ -339,3 +341,15 @@ fn from_str(s: &str) -> Result<SocketAddr, AddrParseError> {
 #[stable(feature = "rust1", since = "1.0.0")]
 #[derive(Debug, Clone, PartialEq)]
 pub struct AddrParseError(());
+
+impl fmt::Display for AddrParseError {
+    fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
+        fmt.write_str(self.description())
+    }
+}
+
+impl Error for AddrParseError {
+    fn description(&self) -> &str {
+        "invalid IP address syntax"
+    }
+}