Up

module Cmt_format

: sig
#
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
end