Name Description Size
algorithm.rs Algorithms to efficiently convert strings to floats. 6154
bhcomp.rs Compare the mantissa to the halfway representation of the float. Compares the actual significant digits of the mantissa to the theoretical digits from `b+h`, scaled into the proper range. 7039
bignum.rs Big integer type definition. 679
cached.rs Cached powers trait for extended-precision floats. 2156
cached_float80.rs Cached exponents for basen values with 80-bit extended floats. Exact versions of base**n as an extended-precision float, with both large and small powers. Use the large powers to minimize the amount of compounded error. These values were calculated using Python, using the arbitrary-precision integer to calculate exact extended-representation of each value. These values are all normalized. 5782
digit.rs Helpers to convert and add digits from characters. 444
errors.rs Estimate the error in an 80-bit approximation of a float. This estimates the error in a floating-point representation. This implementation is loosely based off the Golang implementation, found here: <https://golang.org/src/strconv/atof.go> 5082
exponent.rs Utilities to calculate exponents. 1562
float.rs 5482
large_powers.rs Precalculated large powers for limbs. 232
large_powers32.rs Precalculated large powers for 32-bit limbs. 15362
large_powers64.rs Precalculated large powers for 64-bit limbs. 15879
math.rs Building-blocks for arbitrary-precision math. These algorithms assume little-endian order for the large integer buffers, so for a `vec![0, 1, 2, 3]`, `3` is the most significant limb, and `0` is the least significant limb. 26259
mod.rs Fast, minimal float-parsing algorithm. 1041
num.rs Utilities for Rust numbers. 11579
parse.rs 2241
rounding.rs Defines rounding schemes for floating-point numbers. 7388
shift.rs Bit-shift helpers. 1235
small_powers.rs Pre-computed small powers. 1318