Skip to content

Commit c416b71

Browse files
committedApr 21, 2021
Rename to to_ascii_digit_radix, add issue number
1 parent da5251f commit c416b71

File tree

3 files changed

+24
-21
lines changed

3 files changed

+24
-21
lines changed
 

‎library/core/src/num/mod.rs

+11-8
Original file line numberDiff line numberDiff line change
@@ -714,27 +714,30 @@ impl u8 {
714714
/// Basic usage:
715715
///
716716
/// ```
717-
/// assert_eq!(b'1'.to_digit(10), Some(1));
718-
/// assert_eq!(b'f'.to_digit(16), Some(15));
717+
/// #![feature(to_ascii_digit)]
718+
/// assert_eq!(b'1'.to_ascii_digit_radix(10), Some(1));
719+
/// assert_eq!(b'f'.to_ascii_digit_radix(16), Some(15));
719720
/// ```
720721
///
721722
/// Passing a non-digit results in failure:
722723
///
723724
/// ```
724-
/// assert_eq!(b'f'.to_digit(10), None);
725-
/// assert_eq!(b'z'.to_digit(16), None);
725+
/// #![feature(to_ascii_digit)]
726+
/// assert_eq!(b'f'.to_ascii_digit_radix(10), None);
727+
/// assert_eq!(b'z'.to_ascii_digit_radix(16), None);
726728
/// ```
727729
///
728730
/// Passing a large radix, causing a panic:
729731
///
730732
/// ```should_panic
733+
/// #![feature(to_ascii_digit)]
731734
/// // this panics
732-
/// b'1'.to_digit(37);
735+
/// b'1'.to_ascii_digit_radix(37);
733736
/// ```
734-
#[unstable(feature = "ascii_to_digit", issue = "none")]
737+
#[unstable(feature = "to_ascii_digit", issue = "83447")]
735738
#[inline]
736-
pub fn to_digit(&self, radix: u32) -> Option<u32> {
737-
assert!(radix <= 36, "to_digit: radix is too high (maximum 36)");
739+
pub fn to_ascii_digit_radix(&self, radix: u32) -> Option<u32> {
740+
assert!(radix <= 36, "to_ascii_digit_radix: radix is too high (maximum 36)");
738741
// the code is split up here to improve execution speed for cases where
739742
// the `radix` is constant and 10 or smaller
740743
let val = if intrinsics::likely(radix <= 10) {

‎library/core/tests/ascii.rs

+12-12
Original file line numberDiff line numberDiff line change
@@ -347,18 +347,18 @@ fn test_is_ascii_control() {
347347
#[cfg(not(bootstrap))]
348348
#[test]
349349
fn test_to_digit() {
350-
assert_eq!(b'0'.to_digit(10), Some(0));
351-
assert_eq!(b'1'.to_digit(2), Some(1));
352-
assert_eq!(b'2'.to_digit(3), Some(2));
353-
assert_eq!(b'9'.to_digit(10), Some(9));
354-
assert_eq!(b'a'.to_digit(16), Some(10));
355-
assert_eq!(b'A'.to_digit(16), Some(10));
356-
assert_eq!(b'b'.to_digit(16), Some(11));
357-
assert_eq!(b'B'.to_digit(16), Some(11));
358-
assert_eq!(b'z'.to_digit(36), Some(35));
359-
assert_eq!(b'Z'.to_digit(36), Some(35));
360-
assert_eq!(b' '.to_digit(10), None);
361-
assert_eq!(b'$'.to_digit(36), None);
350+
assert_eq!(b'0'.to_ascii_digit_radix(10), Some(0));
351+
assert_eq!(b'1'.to_ascii_digit_radix(2), Some(1));
352+
assert_eq!(b'2'.to_ascii_digit_radix(3), Some(2));
353+
assert_eq!(b'9'.to_ascii_digit_radix(10), Some(9));
354+
assert_eq!(b'a'.to_ascii_digit_radix(16), Some(10));
355+
assert_eq!(b'A'.to_ascii_digit_radix(16), Some(10));
356+
assert_eq!(b'b'.to_ascii_digit_radix(16), Some(11));
357+
assert_eq!(b'B'.to_ascii_digit_radix(16), Some(11));
358+
assert_eq!(b'z'.to_ascii_digit_radix(36), Some(35));
359+
assert_eq!(b'Z'.to_ascii_digit_radix(36), Some(35));
360+
assert_eq!(b' '.to_ascii_digit_radix(10), None);
361+
assert_eq!(b'$'.to_ascii_digit_radix(36), None);
362362
}
363363

364364
// `is_ascii` does a good amount of pointer manipulation and has

‎library/core/tests/lib.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
#![feature(array_methods)]
55
#![feature(array_map)]
66
#![feature(array_windows)]
7-
#![cfg_attr(not(bootstrap), feature(ascii_to_digit))]
87
#![feature(bool_to_option)]
98
#![feature(bound_cloned)]
109
#![feature(box_syntax)]
@@ -45,6 +44,7 @@
4544
#![feature(step_trait_ext)]
4645
#![feature(str_internals)]
4746
#![feature(test)]
47+
#![cfg_attr(not(bootstrap), feature(to_ascii_digit))]
4848
#![feature(trusted_len)]
4949
#![feature(try_trait)]
5050
#![feature(slice_internals)]

0 commit comments

Comments
 (0)