• en

Module Cmt_format

type binary_annots =
| Packed of Types.signature * string list
| Implementation of Typedtree.structure
| Interface of Typedtree.signature
| Partial_implementation of binary_part array
| Partial_interface of binary_part array
type binary_part =
| Partial_structure of Typedtree.structure
| Partial_structure_item of Typedtree.structure_item
| Partial_expression of Typedtree.expression
| Partial_pattern of Typedtree.pattern
| Partial_class_expr of Typedtree.class_expr
| Partial_signature of Typedtree.signature
| Partial_signature_item of Typedtree.signature_item
| Partial_module_type of Typedtree.module_type
type cmt_infos = {
cmt_modname : string;
cmt_annots : binary_annots;
cmt_value_dependencies : (Types.value_description * Types.value_description) list;
cmt_comments : (string * Location.t) list;
cmt_args : string array;
cmt_sourcefile : string option;
cmt_builddir : string;
cmt_loadpath : string list;
cmt_source_digest : string option;
cmt_initial_env : Env.t;
cmt_imports : (string * Digest.t option) list;
cmt_interface_digest : Digest.t option;
cmt_use_summaries : bool;
}
type error =
| Not_a_typedtree of string
exception Error of error
val read : string -> (Cmi_format.cmi_infos option * cmt_infos option)
val read_cmt : string -> cmt_infos
val read_cmi : string -> Cmi_format.cmi_infos
val save_cmt : string -> string -> binary_annots -> string option -> Env.t -> Types.signature option -> unit
val read_magic_number : Pervasives.in_channel -> string
val clear : unit -> unit
val add_saved_type : binary_part -> unit
val get_saved_types : unit -> binary_part list
val set_saved_types : binary_part list -> unit
val record_value_dependency : Types.value_description -> Types.value_description -> unit