package async_log

  1. Overview
  2. Docs

Source file versioned_intf.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
open! Core
open! Import

module type S = sig
  type version
  type 'a t [@@deriving bin_io, sexp]

  val version : version
end

module type Versioned = sig
  module Stable : sig
    module Version : sig
      type t = V2 [@@deriving bin_io, sexp, compare]

      val ( <> ) : t -> t -> bool
      val to_string : t -> string
    end

    module Make (T : S with type version := Version.t) : sig
      type 'a t = 'a T.t

      include Binable.S1 with type 'a t := 'a T.t
      include Sexpable.S1 with type 'a t := 'a T.t
    end
  end
end
OCaml

Innovation. Community. Security.