| 1 | //! This module contains the `Never` type. |
| 2 | //! |
| 3 | //! Values of this type can never be created and will never exist. |
| 4 | |
| 5 | /// A type with no possible values. |
| 6 | /// |
| 7 | /// This is used to indicate values which can never be created, such as the |
| 8 | /// error type of infallible futures. |
| 9 | /// |
| 10 | /// This type is a stable equivalent to the `!` type from `std`. |
| 11 | /// |
| 12 | /// This is currently an alias for [`std::convert::Infallible`], but in |
| 13 | /// the future it may be an alias for [`!`][never]. |
| 14 | /// See ["Future compatibility" section of `std::convert::Infallible`][infallible] for more. |
| 15 | /// |
| 16 | /// [never]: https://doc.rust-lang.org/nightly/std/primitive.never.html |
| 17 | /// [infallible]: https://doc.rust-lang.org/nightly/std/convert/enum.Infallible.html#future-compatibility |
| 18 | pub type Never = core::convert::Infallible; |
| 19 | |