Crate malachite_float
source ·Expand description
This crate defines Float
s, which are arbitrary-precision floating-point numbers.
Float
s are currently experimental. They are missing many important functions. However, the
functions that are currently implemented are thoroughly tested and documented, with the
exception of string conversion functions. The current string conversions are incomplete and
will be changed in the future to match MPFR’s behavior.
§Demos and benchmarks
This crate comes with a bin
target that can be used for running demos and benchmarks.
- Almost all of the public functions in this crate have an associated demo. Running a demo shows you a function’s behavior on a large number of inputs. TODO
- You can use a similar command to run benchmarks. TODO
The list of available demos and benchmarks is not documented anywhere; you must find them by
browsing through
bin_util/demo_and_bench
.
§Features
32_bit_limbs
: Sets the type ofLimb
tou32
instead of the default,u64
.test_build
: A large proportion of the code in this crate is only used for testing. For a typical user, building this code would result in an unnecessarily long compilation time and an unnecessarily large binary. My solution is to only build this code when thetest_build
feature is enabled. If you want to run unit tests, you must enabletest_build
. However, doctests don’t require it, since they only test the public interface.bin_build
: This feature is used to build the code for demos and benchmarks, which also takes a long time to build. Enabling this feature also enablestest_build
.
Modules§
- Traits for arithmetic.
- Basic traits for working with
Float
s. - Traits for comparing
Float
s for equality or order. - Functions that produce
Float
approximations of mathematical constants, using a given precision and rounding mode. - Iterators that generate
Float
s without repetition. - Iterators that generate
Float
s randomly.
Structs§
- A floating-point number.