]> git.lizzy.rs Git - rust.git/commit
std: Second pass stabilization of Result<T, E>
authorAlex Crichton <alex@alexcrichton.com>
Wed, 17 Dec 2014 20:10:13 +0000 (12:10 -0800)
committerAlex Crichton <alex@alexcrichton.com>
Fri, 19 Dec 2014 21:42:55 +0000 (13:42 -0800)
commita71686f4ea1a265f15adfbe850305f65453ef550
treec5ed50949921dade195113c9f06008fcd74d66a8
parent95c2ed31aeb66b2662933200dbfd661a573b1f49
std: Second pass stabilization of Result<T, E>

This commit, like the second pass of `Option`, largely just stablizes the
existing functionality after renaming a few iterators.

The specific actions taken were:

* The `Ok` and `Err` variants were marked `#[stable]` as the stability
  inheritance was since removed.
* The `as_mut` method is now stable.
* The `map` method is now stable
* The `map_err` method is now stable
* The `iter`, `iter_mut`, and `into_iter` methods now returned structures named
  after the method of iteration. The methods are also now all stable.
* The `and_then` method is now stable.
* The `or_else` method is now stable.
* The `unwrap` family of functions are now all stable: `unwrap_or`,
  `unwrap_or_else`, `unwrap`, and `unwrap_err`.

There is a possible open extension to `Result::{and, and_then}` to make the
return type further generic over `FromError` (as proposed in #19078), but this
is a backwards compatible change due to the usage of default type parameters,
which makes the two functions safe to stabilize now regardless of the outcome of
that issue.
src/libcore/result.rs