diff --git a/src/core/CCFloat.ml b/src/core/CCFloat.ml index deb41796..68c0b412 100644 --- a/src/core/CCFloat.ml +++ b/src/core/CCFloat.ml @@ -38,6 +38,8 @@ let max_finite_value = Stdlib.max_float let epsilon = Stdlib.epsilon_float +let pi = 0x1.921fb54442d18p+1 + let is_nan x = Stdlib.(classify_float x = Stdlib.FP_nan) let add = (+.) diff --git a/src/core/CCFloat.mli b/src/core/CCFloat.mli index cd9503ee..cff93488 100644 --- a/src/core/CCFloat.mli +++ b/src/core/CCFloat.mli @@ -30,6 +30,10 @@ val epsilon : t (** [epsilon] is the smallest positive float x such that [1.0 +. x <> 1.0]. Equal to {!Stdlib.epsilon_float}. *) +val pi : t +(** [pi] is the constant pi. The ratio of a circunference to its diameter. + @since NEXT_RELEASE *) + val is_nan : t -> bool (** [is_nan f] returns [true] if f is NaN, [false] otherwise. *)