(************************************************************************) (* * The Coq Proof Assistant / The Coq Development Team *) (* v * INRIA, CNRS and contributors - Copyright 1999-2018 *) (* module_implementation module_retroknowledge | ModTypeRK : unit module_retroknowledge (*************************************************************************) (** {4 From safe_typing.ml} *) type nativecode_symb_array type compilation_unit_name = DirPath.t type vodigest = | Dvo of Digest.t (* The digest of the seg_lib part *) | Dviovo of Digest.t * Digest.t (* The digest of the seg_lib+seg_univ part *) type library_info = compilation_unit_name * vodigest type library_deps = library_info array type compiled_library = { comp_name : compilation_unit_name; comp_mod : module_body; comp_deps : library_deps; comp_enga : engagement; comp_natsymbs : nativecode_symb_array } (*************************************************************************) (** {4 From library.ml} *) type library_objects type summary_disk = { md_name : compilation_unit_name; md_imports : compilation_unit_name array; md_deps : library_deps; } type library_disk = { md_compiled : compiled_library; md_objects : library_objects; } type opaque_table = constr Future.computation array type univ_table = (Univ.universe_context_set Future.computation array * Univ.universe_context_set * bool) option (** A .vo file is currently made of : 1) a magic number (4 bytes, cf output_binary_int) 2) a marshalled [library_disk] structure 3) a [Digest.t] string (16 bytes) 4) a marshalled [univ_table] (* Some if vo was obtained from vi *) 5) a [Digest.t] string (16 bytes) 6) a marshalled [None] discharge_table (* Some in vi files *) 7) a [Digest.t] string (16 bytes) 8) a marshalled [None] todo_table (* Some in vi files *) 9) a [Digest.t] string (16 bytes) 10) a marshalled [opaque_table] 11) a [Digest.t] string (16 bytes) *)