module type S =sig..end
type t
typeouter =t
include Sexpable.S
include Binable.S
include Floatable.S
include Stringable.S
include Hashable.S_binable
include Comparable.S_binable
include Robustly_comparable.S
val max_value : tval min_value : tval zero : tval epsilon : tval max_finite_value : tval min_finite_value : tval of_int : int -> tval to_int : t -> intval of_int64 : int64 -> tval to_int64 : t -> int64val round_towards_zero_exn : t -> intval round_towards_zero : t -> int optionval round : t -> tval round_down_exn : t -> intval round_down : t -> int optionval round_up_exn : t -> intval round_up : t -> int optionval iround_exn : t -> int
iround returns None if iround_exn raises an exception
val iround : t -> int optioniround t rounds t to the nearest int. Returns None when t is too large to round to
an int.val is_nan : t -> boolval is_inf : t -> boolval min_inan : t -> t -> tnan.val max_inan : t -> t -> tnan.val (+) : t -> t -> tval (-) : t -> t -> tval ( * ) : t -> t -> tval (/) : t -> t -> tmodule Parts:sig..end
val modf : t -> Parts.tval floor : t -> tval ceil : t -> tval mod_float : t -> t -> tmod_float x y returns a result with the same sign as x. It returns nan if y is
0. It is basically
let mod_float x y = x -. float(truncate(x/.y)) *. y
not
let mod_float x y = x -. floor(x/.y) *. y
and therefore resembles mod on integers more than %.val add : t -> t -> tval sub : t -> t -> tval neg : t -> tval scale : t -> t -> tval abs : t -> tmodule Class:sig..end
val classify : t -> Class.tmodule Sign:sig..end
val sign : t -> Sign.tmodule Terse:sig..end