From 1acec4cbd9d10727b221779f99df36d840f0beec Mon Sep 17 00:00:00 2001 From: Son Date: Mon, 20 Aug 2018 15:46:59 +1000 Subject: [PATCH 1/2] Add doc for impl From in char_convert --- src/libcore/char/convert.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/libcore/char/convert.rs b/src/libcore/char/convert.rs index 803a924eb3a46..6c2c02951af62 100644 --- a/src/libcore/char/convert.rs +++ b/src/libcore/char/convert.rs @@ -115,6 +115,10 @@ pub unsafe fn from_u32_unchecked(i: u32) -> char { #[stable(feature = "char_convert", since = "1.13.0")] impl From for u32 { + /// Converts a [`char`] into a [`u32`]. + /// + /// [`char`]: primitive.char.html + /// [`u32`]: primitive.u32.html #[inline] fn from(c: char) -> Self { c as u32 @@ -141,6 +145,10 @@ impl From for u32 { /// C0 and C1 control codes. #[stable(feature = "char_convert", since = "1.13.0")] impl From for char { + /// Converts a [`u8`] into a [`char`]. + /// + /// [`u8`]: primitive.u8.html + /// [`char`]: primitive.char.html #[inline] fn from(i: u8) -> Self { i as char From 992e220935f1d4c60ada2b0da625a83b85724f04 Mon Sep 17 00:00:00 2001 From: Son Date: Tue, 25 Sep 2018 21:59:58 +1000 Subject: [PATCH 2/2] Add examples for doc --- src/libcore/char/convert.rs | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/src/libcore/char/convert.rs b/src/libcore/char/convert.rs index 6c2c02951af62..e9ccdd0ea3c57 100644 --- a/src/libcore/char/convert.rs +++ b/src/libcore/char/convert.rs @@ -117,8 +117,17 @@ pub unsafe fn from_u32_unchecked(i: u32) -> char { impl From for u32 { /// Converts a [`char`] into a [`u32`]. /// - /// [`char`]: primitive.char.html - /// [`u32`]: primitive.u32.html + /// # Examples + /// + /// ``` + /// use std::mem; + /// + /// fn main() { + /// let c = 'c'; + /// let u = u32::from(c); + /// assert!(4 == mem::size_of_val(&u)) + /// } + /// ``` #[inline] fn from(c: char) -> Self { c as u32 @@ -147,8 +156,17 @@ impl From for u32 { impl From for char { /// Converts a [`u8`] into a [`char`]. /// - /// [`u8`]: primitive.u8.html - /// [`char`]: primitive.char.html + /// # Examples + /// + /// ``` + /// use std::mem; + /// + /// fn main() { + /// let u = 32 as u8; + /// let c = char::from(u); + /// assert!(4 == mem::size_of_val(&c)) + /// } + /// ``` #[inline] fn from(i: u8) -> Self { i as char