diff options
| author | Peter Todd <pete@petertodd.org> | 2020-02-19 16:37:58 -0500 |
|---|---|---|
| committer | Peter Todd <pete@petertodd.org> | 2020-02-19 16:37:58 -0500 |
| commit | 883e69db950522afb73fc9ad8ea122bacdd42ee4 (patch) | |
| tree | 1c81e12353514c083cfed8cb83872e661e7faf8b /src/liballoc/string.rs | |
| parent | 7d6b8c414e84e1f4f2f40236e83125ba8e034b98 (diff) | |
| download | rust-883e69db950522afb73fc9ad8ea122bacdd42ee4.tar.gz rust-883e69db950522afb73fc9ad8ea122bacdd42ee4.zip | |
Change FromStr for String to use Infallible directly
Fixes the confusing documentation on `ParseError` by making it irrelevant.
Diffstat (limited to 'src/liballoc/string.rs')
| -rw-r--r-- | src/liballoc/string.rs | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/src/liballoc/string.rs b/src/liballoc/string.rs index 3cb1f259a0b..f5afea15d65 100644 --- a/src/liballoc/string.rs +++ b/src/liballoc/string.rs @@ -2106,18 +2106,11 @@ impl ops::DerefMut for String { } } -/// An error when parsing a `String`. +/// A type alias for [`Infallible`]. /// -/// This `enum` is slightly awkward: it will never actually exist. This error is -/// part of the type signature of the implementation of [`FromStr`] on -/// [`String`]. The return type of [`from_str`], requires that an error be -/// defined, but, given that a [`String`] can always be made into a new -/// [`String`] without error, this type will never actually be returned. As -/// such, it is only here to satisfy said signature, and is useless otherwise. +/// This alias exists for backwards compatibility, and may be eventually deprecated. /// -/// [`FromStr`]: ../../std/str/trait.FromStr.html -/// [`String`]: struct.String.html -/// [`from_str`]: ../../std/str/trait.FromStr.html#tymethod.from_str +/// [`Infallible`]: ../../core/convert/enum.Infallible.html #[stable(feature = "str_parse_error", since = "1.5.0")] pub type ParseError = core::convert::Infallible; @@ -2125,7 +2118,7 @@ pub type ParseError = core::convert::Infallible; impl FromStr for String { type Err = core::convert::Infallible; #[inline] - fn from_str(s: &str) -> Result<String, ParseError> { + fn from_str(s: &str) -> Result<String, Self::Err> { Ok(String::from(s)) } } |
