Module Digodoc_lib.Type

type file_kind =
| Directory
| File
| Special
type comp_unit = {
unit_name : string;
unit_implementation : string option;
unit_import_cmis : string EzCompat.StringMap.t;
unit_import_cmxs : string EzCompat.StringMap.t;
}
type opam_package = {
opam_name : string;
mutable opam_version : string;
mutable opam_files : (string * file_kind) list;
mutable opam_metas : meta_package list;
mutable opam_libs : ocaml_lib EzCompat.StringMap.t;
mutable opam_mdls : ocaml_mdl EzCompat.StringMap.t;
mutable opam_synopsis : string option;
mutable opam_description : string option;
mutable opam_authors : string list option;
mutable opam_homepage : string option;
mutable opam_license : string option;
mutable opam_source_archive : string option;
mutable opam_deps : opam_package EzCompat.StringMap.t;
mutable opam_revdeps : opam_package EzCompat.StringMap.t;
mutable opam_docs : doc_file list;
}
and doc_file =
| README_md of string
| CHANGES_md of string
| LICENSE_md of string
| ODOC_PAGE of string
and meta_package = {
meta_name : string;
meta_opam : opam_package;
meta_file : Meta_file.Types.t;
meta_parent : meta_package option;
mutable meta_dir : directory;
mutable meta_subs : meta_package list;
mutable meta_deps : meta_package EzCompat.StringMap.t;
mutable meta_revdeps : meta_package EzCompat.StringMap.t;
mutable meta_archives : meta_archive EzCompat.StringMap.t;
mutable meta_libs : ocaml_lib EzCompat.StringMap.t;
mutable meta_mdls : ocaml_mdl EzCompat.StringMap.t;
}
and meta_archive =
| Archive_lib of ocaml_lib
| Archive_mdl of ocaml_mdl
| Archive_missing
and directory = {
dir_name : string;
mutable dir_meta : meta_package option;
mutable dir_libs : ocaml_lib EzCompat.StringMap.t;
mutable dir_mdls : ocaml_mdl EzCompat.StringMap.t;
}
and ocaml_lib = {
lib_name : string;
lib_opam : opam_package;
lib_dir : directory;
mutable lib_exts : EzCompat.StringSet.t;
mutable lib_metas : meta_package EzCompat.StringMap.t;
mutable lib_mdls : ocaml_mdl EzCompat.StringMap.t;
mutable lib_units : comp_unit list;
mutable lib_mld_files : string list;
}
and ocaml_mdl = {
mdl_name : string;
mdl_longname : string;
mdl_opam : opam_package;
mdl_dir : directory;
mutable mdl_basename : string;
mutable mdl_exts : EzCompat.StringSet.t;
mutable mdl_libs : ocaml_lib EzCompat.StringMap.t;
mutable mdl_metas : meta_package EzCompat.StringMap.t;
mutable mdl_intf : comp_unit option;
mutable mdl_impl : comp_unit option;
}
and state = {
opam_switch_prefix : string;
mutable opam_packages : opam_package EzCompat.StringMap.t;
mutable meta_packages : meta_package EzCompat.StringMap.t;
mutable directories : directory EzCompat.StringMap.t;
mutable ocaml_libs : (string * ocaml_lib) list;
ocaml_libs_by_name : (string, ocaml_lib) Stdlib.Hashtbl.t;
mutable ocaml_mdls : (string * ocaml_mdl) list;
ocaml_mdls_by_name : (string, ocaml_mdl) Stdlib.Hashtbl.t;
ocaml_mdls_by_cmi_crc : (string, ocaml_mdl) Stdlib.Hashtbl.t;
ocaml_mdls_by_cmx_crc : (string, ocaml_mdl) Stdlib.Hashtbl.t;
}