# Module Timing_wheel_intf.Timing_wheel.Interval_num

    module Interval_num: Timing_wheel_intf.Interval_num

    module Span: sig .. end

    type t = private Int63.t

    include Comparable.S

    include Hashable.S

    val max : t ->
           t -> t

    val min : t ->
           t -> t

    val zero : t

    val one : t

    val min_value : t

    val max_value : t

    val max_representable : t

To avoid issues with arithmetic overflow, the implementation restricts interval numbers to be `<= max_representable`, where:

            max_representable = 1 lsl Level_bits.max_num_bits - 1

    val of_int63 : Int63.t -> t

    val to_int63 : t -> Int63.t

    val of_int : int -> t

    val to_int_exn : t -> int

    val add : t ->
           Span.t -> t

    val sub : t ->
           Span.t -> t

    val diff : t ->
           t -> Span.t

    val succ : t -> t

    val pred : t -> t

    val rem : t ->
           Span.t ->
           Span.t

    val t_of_sexp : Sexplib.Sexp.t -> t

    val sexp_of_t : t -> Sexplib.Sexp.t

    val compare : t -> t -> int

    val bin_t : t Bin_prot.Type_class.t

    val bin_read_t : t Bin_prot.Read.reader

    val __bin_read_t__ : (int -> t) Bin_prot.Read.reader

    val bin_reader_t : t Bin_prot.Type_class.reader

    val bin_size_t : t Bin_prot.Size.sizer

    val bin_write_t : t Bin_prot.Write.writer

    val bin_writer_t : t Bin_prot.Type_class.writer

To avoid issues with arithmetic overflow, the implementation restricts interval numbers to be `<= max_representable`, where:

            max_representable = 1 lsl Level_bits.max_num_bits - 1