8 const ASCII_NUMBERS: [&str; 19] = [
30 macro_rules! from_str_bench {
31 ($mac:ident, $t:ty) => {
33 fn $mac(b: &mut Bencher) {
39 .filter_map(|s| <$t>::from_str(s).ok())
46 macro_rules! from_str_radix_bench {
47 ($mac:ident, $t:ty, $radix:expr) => {
49 fn $mac(b: &mut Bencher) {
55 .filter_map(|s| <$t>::from_str_radix(s, $radix).ok())
62 from_str_bench!(bench_u8_from_str, u8);
63 from_str_radix_bench!(bench_u8_from_str_radix_2, u8, 2);
64 from_str_radix_bench!(bench_u8_from_str_radix_10, u8, 10);
65 from_str_radix_bench!(bench_u8_from_str_radix_16, u8, 16);
66 from_str_radix_bench!(bench_u8_from_str_radix_36, u8, 36);
68 from_str_bench!(bench_u16_from_str, u16);
69 from_str_radix_bench!(bench_u16_from_str_radix_2, u16, 2);
70 from_str_radix_bench!(bench_u16_from_str_radix_10, u16, 10);
71 from_str_radix_bench!(bench_u16_from_str_radix_16, u16, 16);
72 from_str_radix_bench!(bench_u16_from_str_radix_36, u16, 36);
74 from_str_bench!(bench_u32_from_str, u32);
75 from_str_radix_bench!(bench_u32_from_str_radix_2, u32, 2);
76 from_str_radix_bench!(bench_u32_from_str_radix_10, u32, 10);
77 from_str_radix_bench!(bench_u32_from_str_radix_16, u32, 16);
78 from_str_radix_bench!(bench_u32_from_str_radix_36, u32, 36);
80 from_str_bench!(bench_u64_from_str, u64);
81 from_str_radix_bench!(bench_u64_from_str_radix_2, u64, 2);
82 from_str_radix_bench!(bench_u64_from_str_radix_10, u64, 10);
83 from_str_radix_bench!(bench_u64_from_str_radix_16, u64, 16);
84 from_str_radix_bench!(bench_u64_from_str_radix_36, u64, 36);
86 from_str_bench!(bench_i8_from_str, i8);
87 from_str_radix_bench!(bench_i8_from_str_radix_2, i8, 2);
88 from_str_radix_bench!(bench_i8_from_str_radix_10, i8, 10);
89 from_str_radix_bench!(bench_i8_from_str_radix_16, i8, 16);
90 from_str_radix_bench!(bench_i8_from_str_radix_36, i8, 36);
92 from_str_bench!(bench_i16_from_str, i16);
93 from_str_radix_bench!(bench_i16_from_str_radix_2, i16, 2);
94 from_str_radix_bench!(bench_i16_from_str_radix_10, i16, 10);
95 from_str_radix_bench!(bench_i16_from_str_radix_16, i16, 16);
96 from_str_radix_bench!(bench_i16_from_str_radix_36, i16, 36);
98 from_str_bench!(bench_i32_from_str, i32);
99 from_str_radix_bench!(bench_i32_from_str_radix_2, i32, 2);
100 from_str_radix_bench!(bench_i32_from_str_radix_10, i32, 10);
101 from_str_radix_bench!(bench_i32_from_str_radix_16, i32, 16);
102 from_str_radix_bench!(bench_i32_from_str_radix_36, i32, 36);
104 from_str_bench!(bench_i64_from_str, i64);
105 from_str_radix_bench!(bench_i64_from_str_radix_2, i64, 2);
106 from_str_radix_bench!(bench_i64_from_str_radix_10, i64, 10);
107 from_str_radix_bench!(bench_i64_from_str_radix_16, i64, 16);
108 from_str_radix_bench!(bench_i64_from_str_radix_36, i64, 36);