Rollup merge of #121024 - joseluis:feat-asciichar-default, r=scottmcm
implement `Default` for `AsciiChar` This implements `Default` for `AsciiChar` in order to match `char`'s implementation. From all the different possible ways to do this I think the clearest one is to have both `char` and `AsciiChar` impls together. I've also updated the doc-comment of the default variant since rustdoc doesn't seem to indicate it otherwise. Probably the text could be improved, though. I couldn't find any similar examples in the codebase and suggestions are welcomed. r? `@scottmcm`
This commit is contained in:
commit
c1a80211f5
2 changed files with 4 additions and 1 deletions
|
@ -58,7 +58,7 @@ use crate::mem::transmute;
|
||||||
#[unstable(feature = "ascii_char", issue = "110998")]
|
#[unstable(feature = "ascii_char", issue = "110998")]
|
||||||
#[repr(u8)]
|
#[repr(u8)]
|
||||||
pub enum AsciiChar {
|
pub enum AsciiChar {
|
||||||
/// U+0000
|
/// U+0000 (The default variant)
|
||||||
#[unstable(feature = "ascii_char_variants", issue = "110998")]
|
#[unstable(feature = "ascii_char_variants", issue = "110998")]
|
||||||
Null = 0,
|
Null = 0,
|
||||||
/// U+0001
|
/// U+0001
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
#![stable(feature = "rust1", since = "1.0.0")]
|
#![stable(feature = "rust1", since = "1.0.0")]
|
||||||
|
|
||||||
|
use crate::ascii::Char as AsciiChar;
|
||||||
|
|
||||||
/// A trait for giving a type a useful default value.
|
/// A trait for giving a type a useful default value.
|
||||||
///
|
///
|
||||||
/// Sometimes, you want to fall back to some kind of default value, and
|
/// Sometimes, you want to fall back to some kind of default value, and
|
||||||
|
@ -158,6 +160,7 @@ macro_rules! default_impl {
|
||||||
default_impl! { (), (), "Returns the default value of `()`" }
|
default_impl! { (), (), "Returns the default value of `()`" }
|
||||||
default_impl! { bool, false, "Returns the default value of `false`" }
|
default_impl! { bool, false, "Returns the default value of `false`" }
|
||||||
default_impl! { char, '\x00', "Returns the default value of `\\x00`" }
|
default_impl! { char, '\x00', "Returns the default value of `\\x00`" }
|
||||||
|
default_impl! { AsciiChar, AsciiChar::Null, "Returns the default value of `Null`" }
|
||||||
|
|
||||||
default_impl! { usize, 0, "Returns the default value of `0`" }
|
default_impl! { usize, 0, "Returns the default value of `0`" }
|
||||||
default_impl! { u8, 0, "Returns the default value of `0`" }
|
default_impl! { u8, 0, "Returns the default value of `0`" }
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue