//! Pre-computed small tables for parsing decimal strings. #![doc(hidden)] #![cfg(not(feature = "compact"))] /// Pre-computed, small powers-of-5. pub const SMALL_INT_POW5: [u64; 28] = [ 1, 5, 25, 125, 625, 3125, 15625, 78125, 390625, 1953125, 9765625, 48828125, 244140625, 1220703125, 6103515625, 30517578125, 152587890625, 762939453125, 3814697265625, 19073486328125, 95367431640625, 476837158203125, 2384185791015625, 11920928955078125, 59604644775390625, 298023223876953125, 1490116119384765625, 7450580596923828125, ]; /// Pre-computed, small powers-of-10. pub const SMALL_INT_POW10: [u64; 20] = [ 1, 10, 100, 1000, 10000, 100000, 1000000, 10000000, 100000000, 1000000000, 10000000000, 100000000000, 1000000000000, 10000000000000, 100000000000000, 1000000000000000, 10000000000000000, 100000000000000000, 1000000000000000000, 10000000000000000000, ]; /// Pre-computed, small powers-of-10. pub const SMALL_F32_POW10: [f32; 16] = [1e0, 1e1, 1e2, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8, 1e9, 1e10, 0., 0., 0., 0., 0.]; /// Pre-computed, small powers-of-10. pub const SMALL_F64_POW10: [f64; 32] = [ 1e0, 1e1, 1e2, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8, 1e9, 1e10, 1e11, 1e12, 1e13, 1e14, 1e15, 1e16, 1e17, 1e18, 1e19, 1e20, 1e21, 1e22, 0., 0., 0., 0., 0., 0., 0., 0., 0., ]; /// Pre-computed large power-of-5 for 32-bit limbs. #[cfg(not(all(target_pointer_width = "64", not(target_arch = "sparc"))))] pub const LARGE_POW5: [u32; 10] = [ 4279965485, 329373468, 4020270615, 2137533757, 4287402176, 1057042919, 1071430142, 2440757623, 381945767, 46164893, ]; /// Pre-computed large power-of-5 for 64-bit limbs. #[cfg(all(target_pointer_width = "64", not(target_arch = "sparc")))] pub const LARGE_POW5: [u64; 5] = [ 1414648277510068013, 9180637584431281687, 4539964771860779200, 10482974169319127550, 198276706040285095, ]; /// Step for large power-of-5 for 32-bit limbs. pub const LARGE_POW5_STEP: u32 = 135;