A Rust implementation of set-based interval arithmetic.
rustc
versionA recent version of the nightly toolchain is required, since the new asm!
macro is used. You need to specify the toolchain by, for example, the toolchain file in your crate (see example.
x86-64
Haswell-based and newer processors are supported.
You need to specify the target CPU when building a crate that depends on inari. One way to do that is to add a configuration file to the consuming crate (see example; you may want to change native
to haswell
for maximum compatibility if you are going to distribute your binary).
AArch64 (a.k.a. ARM64)
Experimental, it is not tested continuously.
gmp
(enabled by default) - Enables operations that depend on GMP and MPFR, namely, transcendental functions and conversion between texts and intervals. You can opt-out the feature to reduce dependencies. Even in that case, you still have access to all arithmetic operations that are required for writing filters for robust geometric predicates.