open OCaml_all open Asttypes open Types exception Error of string type t = { uid : int; mutable recurs : int; mutable def : def } and def = | Link of t | Arrow of t * t | Tuple of t list | PVariant of (string * t option) list (* Polymorphic variant *) | Variant of (string * t list) list * bool | Record of (string * t) list * bool | Builtin of string * t list | Abstract of string val read_cmi: string -> string * (string * Types.type_expr * t) list val print : Format.formatter -> t -> unit val print_ocaml : Format.formatter -> Types.type_expr -> unit