package core_kernel

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Source file info_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
28
29
30
31
32
33
34
open! Import

(** Extension to the base signature *)
module type Extension = sig
  type t [@@deriving bin_io]

  module Stable : sig
    (** [Info.t] is wire-compatible with [V2.t], but not [V1.t].  [V1] bin-prots a sexp of
        the underlying message, whereas [V2] bin-prots the underlying message. *)
    module V1 : Stable_module_types.S0 with type t = t

    module V2 : sig
      type nonrec t = t [@@deriving hash]

      include Stable_module_types.S0 with type t := t
    end
  end
end

module type S = sig
  include Base.Info.S
  include Extension with type t := t
end

module type Info = sig
  (** @open *)
  include module type of struct
    include Base.Info
  end

  module Internal_repr : module type of Base.Info.Internal_repr
  include Extension with type t := t
  module Extend (Info : Base.Info.S) : Extension with type t := Info.t
end
OCaml

Innovation. Community. Security.