#floating-point #decimal #arithmetic #floating #api-bindings #point

sys dfp-number-sys

Rust bindings for Intel® Decimal Floating-Point Math Library

20 releases

0.1.0 Mar 22, 2024
0.0.19 Dec 29, 2023
0.0.15 Nov 14, 2023
0.0.13 Feb 7, 2023
0.0.11 Nov 25, 2022

#526 in Algorithms

Download history 32/week @ 2023-12-18 85/week @ 2023-12-25 122/week @ 2024-01-01 19/week @ 2024-01-08 20/week @ 2024-01-15 35/week @ 2024-01-29 12/week @ 2024-02-05 28/week @ 2024-02-12 31/week @ 2024-02-19 122/week @ 2024-02-26 26/week @ 2024-03-04 60/week @ 2024-03-11 177/week @ 2024-03-18 111/week @ 2024-03-25 186/week @ 2024-04-01

541 downloads per month
Used in 27 crates (3 directly)

MIT/Apache

14MB
270K SLoC

C 269K SLoC // 0.1% comments Batch 1K SLoC Rust 576 SLoC // 0.2% comments Shell 15 SLoC // 0.5% comments

Rust bindings for Intel® Decimal Floating-Point Math Library v2.2

Crates.io Code coverage build Linux build Windows build MacOs build MacOs arm64 MIT licensed Apache 2.0 licensed EULA licensed Contributor Covenant

Bindings (alphabetical order)

  • bid128_abs
  • bid128_acos
  • bid128_add
  • bid128_copy
  • bid128_cos
  • bid128_div
  • bid128_exp
  • bid128_frexp
  • bid128_from_int32
  • bid128_from_int64
  • bid128_from_string
  • bid128_from_uint32
  • bid128_from_uint64
  • bid128_ilogb
  • bid128_isFinite
  • bid128_inf
  • bid128_isInf
  • bid128_isSigned
  • bid128_isZero
  • bid128_log
  • bid128_maxnum
  • bid128_minnum
  • bid128_mul
  • bid128_negate
  • bid128_pow
  • bid128_quantexp
  • bid128_quantum
  • bid128_quantize
  • bid128_quiet_equal
  • bid128_quiet_greater
  • bid128_quiet_greater_equal
  • bid128_quiet_less
  • bid128_quiet_less_equal
  • bid128_quiet_to_string
  • bid128_rem
  • bid128_round_integral_exact
  • bid128_round_integral_nearest_away
  • bid128_round_integral_nearest_even
  • bid128_round_integral_negative
  • bid128_round_integral_positive
  • bid128_round_integral_zero
  • bid128_scalbn
  • bid128_scalbln
  • bid128_sqrt
  • bid128_sub
  • bid128_to_int32_int
  • bid128_to_uint32_int
  • bid128_to_int64_int
  • bid128_to_uint64_int
  • bid128_to_string

Bindings to implement

  • __bid128_acosh
  • __bid128_asin
  • __bid128_asinh
  • __bid128_atan
  • __bid128_atan2
  • __bid128_atanh
  • __bid128_cbrt
  • __bid128_class
  • __bid128_copySign
  • __bid128_cosh
  • __bid128_erf
  • __bid128_erfc
  • __bid128_exp10
  • __bid128_exp2
  • __bid128_expm1
  • __bid128_fdim
  • __bid128_fma
  • __bid128_fmod
  • __bid128_hypot
  • __bid128_isCanonical
  • __bid128_isNaN
  • __bid128_isNormal
  • __bid128_isSignaling
  • __bid128_isSigned
  • __bid128_isSubnormal
  • __bid128_ldexp
  • __bid128_lgamma
  • __bid128_llquantexp
  • __bid128_llrint
  • __bid128_llround
  • __bid128_log10
  • __bid128_log1p
  • __bid128_log2
  • __bid128_logb
  • __bid128_lrint
  • __bid128_lround
  • __bid128_maxnum_mag
  • __bid128_minnum_mag
  • __bid128_modf
  • __bid128_nan
  • __bid128_nearbyint
  • __bid128_nextafter
  • __bid128_nextdown
  • __bid128_nexttoward
  • __bid128_nextup
  • __bid128_quiet_greater_unordered
  • __bid128_quiet_less_unordered
  • __bid128_quiet_not_equal
  • __bid128_quiet_not_greater
  • __bid128_quiet_not_less
  • __bid128_quiet_ordered
  • __bid128_quiet_unordered
  • __bid128_radix
  • __bid128_sameQuantum
  • __bid128_signaling_greater
  • __bid128_signaling_greater_equal
  • __bid128_signaling_greater_unordered
  • __bid128_signaling_less
  • __bid128_signaling_less_equal
  • __bid128_signaling_less_unordered
  • __bid128_signaling_not_greater
  • __bid128_signaling_not_less
  • __bid128_sin
  • __bid128_sinh
  • __bid128_tan
  • __bid128_tanh
  • __bid128_tgamma
  • __bid128_to_bid32
  • __bid128_to_bid64
  • __bid128_to_binary128
  • __bid128_to_binary32
  • __bid128_to_binary64
  • __bid128_to_binary80
  • __bid128_to_int16_ceil
  • __bid128_to_int16_floor
  • __bid128_to_int16_int
  • __bid128_to_int16_rnint
  • __bid128_to_int16_rninta
  • __bid128_to_int16_xceil
  • __bid128_to_int16_xfloor
  • __bid128_to_int16_xint
  • __bid128_to_int16_xrnint
  • __bid128_to_int16_xrninta
  • __bid128_to_int32_ceil
  • __bid128_to_int32_floor
  • __bid128_to_int32_rnint
  • __bid128_to_int32_rninta
  • __bid128_to_int32_xceil
  • __bid128_to_int32_xfloor
  • __bid128_to_int32_xint
  • __bid128_to_int32_xrnint
  • __bid128_to_int32_xrninta
  • __bid128_to_int64_ceil
  • __bid128_to_int64_floor
  • __bid128_to_int64_rnint
  • __bid128_to_int64_rninta
  • __bid128_to_int64_xceil
  • __bid128_to_int64_xfloor
  • __bid128_to_int64_xint
  • __bid128_to_int64_xrnint
  • __bid128_to_int64_xrninta
  • __bid128_to_int8_ceil
  • __bid128_to_int8_floor
  • __bid128_to_int8_int
  • __bid128_to_int8_rnint
  • __bid128_to_int8_rninta
  • __bid128_to_int8_xceil
  • __bid128_to_int8_xfloor
  • __bid128_to_int8_xint
  • __bid128_to_int8_xrnint
  • __bid128_to_int8_xrninta
  • __bid128_to_uint16_ceil
  • __bid128_to_uint16_floor
  • __bid128_to_uint16_int
  • __bid128_to_uint16_rnint
  • __bid128_to_uint16_rninta
  • __bid128_to_uint16_xceil
  • __bid128_to_uint16_xfloor
  • __bid128_to_uint16_xint
  • __bid128_to_uint16_xrnint
  • __bid128_to_uint16_xrninta
  • __bid128_to_uint32_ceil
  • __bid128_to_uint32_floor
  • __bid128_to_uint32_rnint
  • __bid128_to_uint32_rninta
  • __bid128_to_uint32_xceil
  • __bid128_to_uint32_xfloor
  • __bid128_to_uint32_xint
  • __bid128_to_uint32_xrnint
  • __bid128_to_uint32_xrninta
  • __bid128_to_uint64_ceil
  • __bid128_to_uint64_floor
  • __bid128_to_uint64_rnint
  • __bid128_to_uint64_rninta
  • __bid128_to_uint64_xceil
  • __bid128_to_uint64_xfloor
  • __bid128_to_uint64_xint
  • __bid128_to_uint64_xrnint
  • __bid128_to_uint64_xrninta
  • __bid128_to_uint8_ceil
  • __bid128_to_uint8_floor
  • __bid128_to_uint8_int
  • __bid128_to_uint8_rnint
  • __bid128_to_uint8_rninta
  • __bid128_to_uint8_xceil
  • __bid128_to_uint8_xfloor
  • __bid128_to_uint8_xint
  • __bid128_to_uint8_xrnint
  • __bid128_to_uint8_xrninta
  • __bid128_totalOrder
  • __bid128_totalOrderMag
  • __bid128d_sqrt
  • __bid128dd_add
  • __bid128dd_div
  • __bid128dd_mul
  • __bid128dd_sub
  • __bid128ddd_fma
  • __bid128ddq_fma
  • __bid128dq_add
  • __bid128dq_div
  • __bid128dq_mul
  • __bid128dq_sub
  • __bid128dqd_fma
  • __bid128dqq_fma
  • __bid128qd_add
  • __bid128qd_div
  • __bid128qd_mul
  • __bid128qd_sub
  • __bid128qdd_fma
  • __bid128qdq_fma
  • __bid128qqd_fma

License

License for Intel® Decimal Floating-Point Math Library v2.2

License for Rust bindings

Licensed under either of

Contribution

All contributions intentionally submitted for inclusion in the work by you, shall be dual licensed as above, without any additional terms or conditions.

Dependencies