sig
  type t = Time.Ofday.t
  type sexpable = t
  val sexp_of_t : sexpable -> Sexplib.Sexp.t
  val t_of_sexp : Sexplib.Sexp.t -> sexpable
  type binable = t
  val bin_size_t : binable Bin_prot.Size.sizer
  val bin_write_t : binable Bin_prot.Map_to_safe.writer
  val bin_write_t_ : binable Bin_prot.Unsafe_write_c.writer
  val bin_read_t : binable Bin_prot.Read_ml.reader
  val bin_read_t_ : binable Bin_prot.Unsafe_read_c.reader
  val bin_read_t__ : (int -> binable) Bin_prot.Unsafe_read_c.reader
  type comparable = t
  val ( >= ) : comparable -> comparable -> bool
  val ( <= ) : comparable -> comparable -> bool
  val ( = ) : comparable -> comparable -> bool
  val ( > ) : comparable -> comparable -> bool
  val ( < ) : comparable -> comparable -> bool
  val ( <> ) : comparable -> comparable -> bool
  val compare : comparable -> comparable -> int
  val ascending : comparable -> comparable -> int
  val descending : comparable -> comparable -> int
  val min : comparable -> comparable -> comparable
  val max : comparable -> comparable -> comparable
  type robustly_comparable = t
  val ( >=. ) : robustly_comparable -> robustly_comparable -> bool
  val ( <=. ) : robustly_comparable -> robustly_comparable -> bool
  val ( =. ) : robustly_comparable -> robustly_comparable -> bool
  val ( >. ) : robustly_comparable -> robustly_comparable -> bool
  val ( <. ) : robustly_comparable -> robustly_comparable -> bool
  val ( <>. ) : robustly_comparable -> robustly_comparable -> bool
  type stringable = t
  val of_string : string -> stringable
  val to_string : stringable -> string
  type floatable = t
  val of_float : float -> floatable
  val to_float : floatable -> float
  val create : ?hr:int -> ?min:int -> ?sec:int -> ?ms:int -> unit -> t
  val min_value : t
  val max_value : t
  val to_span_since_midnight : t -> Time.Span.t
  val of_span_since_midnight : Time.Span.t -> t
  val start_of_day : t
  val add : t -> Time.Span.t -> t option
  val sub : t -> Time.Span.t -> t option
  val to_sec : t -> float
  val of_sec : float -> t
  val small_diff : t -> t -> Time.Span.t
  val pp : Format.formatter -> t -> unit
  val to_string_trimmed : t -> string
  val of_string_iso8601_extended : ?pos:int -> ?len:int -> string -> t
end