//! [`?`] can only be used in functions that return [`Result`] because of the
//! early return of [`Err`] that it provides.
//!
-//! [`expect`]: enum.Result.html#method.expect
+//! [`expect`]: Result::expect
//! [`Write`]: ../../std/io/trait.Write.html
//! [`write_all`]: ../../std/io/trait.Write.html#method.write_all
//! [`io::Result`]: ../../std/io/type.Result.html
//! [`?`]: ../../std/macro.try.html
-//! [`Result`]: enum.Result.html
-//! [`Ok(T)`]: enum.Result.html#variant.Ok
-//! [`Err(E)`]: enum.Result.html#variant.Err
+//! [`Ok(T)`]: Ok
+//! [`Err(E)`]: Err
//! [`io::Error`]: ../../std/io/struct.Error.html
-//! [`Ok`]: enum.Result.html#variant.Ok
-//! [`Err`]: enum.Result.html#variant.Err
#![stable(feature = "rust1", since = "1.0.0")]
/// `Result` is a type that represents either success ([`Ok`]) or failure ([`Err`]).
///
/// See the [`std::result`](index.html) module documentation for details.
-///
-/// [`Ok`]: enum.Result.html#variant.Ok
-/// [`Err`]: enum.Result.html#variant.Err
#[derive(Copy, PartialEq, PartialOrd, Eq, Ord, Debug, Hash)]
#[must_use = "this `Result` may be an `Err` variant, which should be handled"]
#[rustc_diagnostic_item = "result_type"]
/// Returns `true` if the result is [`Ok`].
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- ///
/// # Examples
///
/// Basic usage:
/// Returns `true` if the result is [`Err`].
///
- /// [`Err`]: enum.Result.html#variant.Err
- ///
/// # Examples
///
/// Basic usage:
/// Converts `self` into an [`Option<T>`], consuming `self`,
/// and discarding the error, if any.
///
- /// [`Option<T>`]: ../../std/option/enum.Option.html
+ /// [`Option<T>`]: Option
///
/// # Examples
///
/// Converts `self` into an [`Option<E>`], consuming `self`,
/// and discarding the success value, if any.
///
- /// [`Option<E>`]: ../../std/option/enum.Option.html
+ /// [`Option<E>`]: Option
///
/// # Examples
///
///
/// This function can be used to compose the results of two functions.
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
- ///
/// # Examples
///
/// Print the numbers on each line of a string multiplied by two.
/// the result of a function call, it is recommended to use [`map_or_else`],
/// which is lazily evaluated.
///
- /// [`map_or_else`]: #method.map_or_else
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
+ /// [`map_or_else`]: Result::map_or_else
///
/// # Examples
///
/// This function can be used to unpack a successful result
/// while handling an error.
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
///
/// # Examples
///
/// This function can be used to pass through a successful result while handling
/// an error.
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
///
/// # Examples
///
/// Returns `res` if the result is [`Ok`], otherwise returns the [`Err`] value of `self`.
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
///
/// # Examples
///
/// Calls `op` if the result is [`Ok`], otherwise returns the [`Err`] value of `self`.
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
///
/// This function can be used for control flow based on `Result` values.
///
/// result of a function call, it is recommended to use [`or_else`], which is
/// lazily evaluated.
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
- /// [`or_else`]: #method.or_else
+ /// [`or_else`]: Result::or_else
///
/// # Examples
///
///
/// This function can be used for control flow based on result values.
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
///
/// # Examples
///
/// the result of a function call, it is recommended to use [`unwrap_or_else`],
/// which is lazily evaluated.
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
- /// [`unwrap_or_else`]: #method.unwrap_or_else
+ /// [`unwrap_or_else`]: Result::unwrap_or_else
///
/// # Examples
///
/// Returns the contained [`Ok`] value or computes it from a closure.
///
- /// [`Ok`]: enum.Result.html#variant.Ok
///
/// # Examples
///
/// Panics if the value is an [`Err`], with a panic message including the
/// passed message, and the content of the [`Err`].
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
///
/// # Examples
///
/// case explicitly, or call [`unwrap_or`], [`unwrap_or_else`], or
/// [`unwrap_or_default`].
///
- /// [`unwrap_or`]: #method.unwrap_or
- /// [`unwrap_or_else`]: #method.unwrap_or_else
- /// [`unwrap_or_default`]: #method.unwrap_or_default
+ /// [`unwrap_or`]: Result::unwrap_or
+ /// [`unwrap_or_else`]: Result::unwrap_or_else
+ /// [`unwrap_or_default`]: Result::unwrap_or_default
///
/// # Panics
///
/// Panics if the value is an [`Err`], with a panic message provided by the
/// [`Err`]'s value.
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
///
/// # Examples
///
/// Panics if the value is an [`Ok`], with a panic message including the
/// passed message, and the content of the [`Ok`].
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
///
/// # Examples
///
/// Panics if the value is an [`Ok`], with a custom panic message provided
/// by the [`Ok`]'s value.
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
///
///
/// # Examples
/// assert_eq!(0, bad_year);
/// ```
///
- /// [`parse`]: ../../std/primitive.str.html#method.parse
- /// [`FromStr`]: ../../std/str/trait.FromStr.html
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
+ /// [`parse`]: str::parse
+ /// [`FromStr`]: FromStr
#[inline]
#[stable(feature = "result_unwrap_or_default", since = "1.16.0")]
pub fn unwrap_or_default(self) -> T {
/// to compile if the error type of the `Result` is later changed
/// to an error that can actually occur.
///
- /// [`Ok`]: enum.Result.html#variant.Ok
- /// [`Err`]: enum.Result.html#variant.Err
- /// [`unwrap`]: enum.Result.html#method.unwrap
+ /// [`unwrap`]: Result::unwrap
///
/// # Examples
///
/// The iterator yields one value if the result is [`Ok`], otherwise none.
///
/// Created by [`Result::iter`].
-///
-/// [`Ok`]: enum.Result.html#variant.Ok
-/// [`Result`]: enum.Result.html
-/// [`Result::iter`]: enum.Result.html#method.iter
#[derive(Debug)]
#[stable(feature = "rust1", since = "1.0.0")]
pub struct Iter<'a, T: 'a> {
/// An iterator over a mutable reference to the [`Ok`] variant of a [`Result`].
///
/// Created by [`Result::iter_mut`].
-///
-/// [`Ok`]: enum.Result.html#variant.Ok
-/// [`Result`]: enum.Result.html
-/// [`Result::iter_mut`]: enum.Result.html#method.iter_mut
#[derive(Debug)]
#[stable(feature = "rust1", since = "1.0.0")]
pub struct IterMut<'a, T: 'a> {
/// This struct is created by the [`into_iter`] method on
/// [`Result`] (provided by the [`IntoIterator`] trait).
///
-/// [`Ok`]: enum.Result.html#variant.Ok
-/// [`Result`]: enum.Result.html
-/// [`into_iter`]: ../iter/trait.IntoIterator.html#tymethod.into_iter
-/// [`IntoIterator`]: ../iter/trait.IntoIterator.html
+/// [`into_iter`]: IntoIterator::into_iter
#[derive(Clone, Debug)]
#[stable(feature = "rust1", since = "1.0.0")]
pub struct IntoIter<T> {