Rollup merge of #94273 - Dylan-DPC:doc/errorkind, r=joshtriplett
add matching doc to errorkind Rework of #90706
This commit is contained in:
commit
aa0b7ac0bf
@ -141,6 +141,19 @@ struct Custom {
|
|||||||
/// It is used with the [`io::Error`] type.
|
/// It is used with the [`io::Error`] type.
|
||||||
///
|
///
|
||||||
/// [`io::Error`]: Error
|
/// [`io::Error`]: Error
|
||||||
|
///
|
||||||
|
/// # Handling errors and matching on `ErrorKind`
|
||||||
|
///
|
||||||
|
/// In application code, use `match` for the `ErrorKind` values you are
|
||||||
|
/// expecting; use `_` to match "all other errors".
|
||||||
|
///
|
||||||
|
/// In comprehensive and thorough tests that want to verify that a test doesn't
|
||||||
|
/// return any known incorrect error kind, you may want to cut-and-paste the
|
||||||
|
/// current full list of errors from here into your test code, and then match
|
||||||
|
/// `_` as the correct case. This seems counterintuitive, but it will make your
|
||||||
|
/// tests more robust. In particular, if you want to verify that your code does
|
||||||
|
/// produce an unrecognized error kind, the robust solution is to check for all
|
||||||
|
/// the recognized error kinds and fail in those cases.
|
||||||
#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
|
#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
|
||||||
#[stable(feature = "rust1", since = "1.0.0")]
|
#[stable(feature = "rust1", since = "1.0.0")]
|
||||||
#[allow(deprecated)]
|
#[allow(deprecated)]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user