Module Lang.TypeDecl

module Field : sig ... end
module UnboxedField : sig ... end
module Constructor : sig ... end
module Representation : sig ... end
type variance =
  1. | Pos
  2. | Neg
  3. | Bivariant
type param_desc =
  1. | Any
  2. | Var of string * string option
    (*

    name, jkind (e.g. Some "float64")

    *)
type param = {
  1. desc : param_desc;
  2. variance : variance option;
  3. injectivity : bool;
}
module Equation : sig ... end
type t = {
  1. id : Paths.Identifier.Type.t;
  2. source_loc : Paths.Identifier.SourceLocation.t option;
  3. source_loc_jane : Source_loc_jane.t option;
  4. doc : Comment.docs;
  5. canonical : Paths.Path.Type.t option;
  6. equation : Equation.t;
  7. representation : Representation.t option;
}