123456789101112131415161718192021222324252627282930313233343536373839404142434445open!ImportmoduleStable=structmoduleV1=structmoduleT=structincludeBase.Inttypet=int[@@derivinghash,bin_io,sexp]endincludeTincludeComparable.Stable.V1.Make(T)endendincludeIdentifiable.Extend(Base.Int)(structtypet=int[@@derivingbin_io]end)moduleReplace_polymorphic_compare=Base.IntincludeBase.IntincludeComparable.Validate_with_zero(Base.Int)(* This is already defined by Comparable.Validate_with_zero, but Sign.of_int is
more direct. *)letsign=Sign.of_inttypet=int[@@derivingtyperep]moduleHex=structincludeHextypenonrect=t[@@derivingtyperep,bin_io]endletquickcheck_generator=Base_quickcheck.Generator.intletquickcheck_observer=Base_quickcheck.Observer.intletquickcheck_shrinker=Base_quickcheck.Shrinker.intletgen_incl=Base_quickcheck.Generator.int_inclusiveletgen_uniform_incl=Base_quickcheck.Generator.int_uniform_inclusiveletgen_log_incl=Base_quickcheck.Generator.int_log_inclusiveletgen_log_uniform_incl=Base_quickcheck.Generator.int_log_uniform_inclusive