sonic-number 0.1.2

Fast number parsing based on SIMD
Documentation
1
2
3
4
5
6
7
8
9
10
11
#[inline(always)]
pub unsafe fn simd_str2int(c: &[u8], need: usize) -> (u64, usize) {
    debug_assert!(need < 17);
    let mut sum = 0u64;
    let mut i = 0;
    while i < need && c.get_unchecked(i).is_ascii_digit() {
        sum = (c.get_unchecked(i) - b'0') as u64 + sum * 10;
        i += 1;
    }
    (sum, i)
}