Module Omod_support.Pkg
Packages.
Packages represents sets of compilation objects indexed from a root Conf.libdir.
Packages
type t= Cobj.pkg_idThe type for packages.
val of_dir : ?err:Log.t -> Omod.fpath -> t listof_dir ~err dirare the packages found indir. This is simply all the directory names insidedirand anocamlpackage which points toocamlc -where.erris used to report file system errors (defaults toLog.err).
val find_cobjs : ?err:Log.t -> ?acc:Cobj.t list -> t -> Cobj.t listfind_cobjs ~err ~note ~acc pkgare the compilation objects contained in pkgpkgadded toacc(defaults to[]).erris used to report errors (defaults toLog.nil).
val pp : Stdlib.Format.formatter -> t -> unitppformats package identifiers.
val pp_name : Stdlib.Format.formatter -> t -> unitpp_nameformats the name of package identifiers.
module Set : Stdlib.Set.S with type elt = tPackage identifier sets.
module Map : Stdlib.Map.S with type key = tPackage identifier maps.
Package signatures
type signature= Digest.tThe type for package signatures.
Package information
val info : signature:signature -> cobjs:Cobj.t list -> infoinfo ~signature ~cobjsis information for a package.
val pp_info : Stdlib.Format.formatter -> info -> unitpp_infoformats package information.
Package databases
val db : ?err:Log.t -> ?note:Log.t -> ?progress:bool -> ?init:db -> t list -> dbdb ~err ~note ~progress ~init pkgsis databaseinit(dfeaults toMap.empty) with packagespkgsadded. Their information is computed by the function usingerrto report errors (defaults toLog.err),noteto report indexing operations (defaults toLog.nil) andprogressto indicate if progress should be reported onnote(defaults tofalse).
val db_to_name_db : db -> (t * info) Omod.Private.String.Map.tdb_to_name_db dbmaps package names (rather than identifiers) to their information.
val db_to_cobj_index : db -> Cobj.Index.tdb_to_cobj_index dbis a compilatino object with the contents of the packages ofdb.
val pp_diff : diff Omod.Private.Fmt.tpp_diffformats package database differences.
val diff : db -> (t * signature) list -> diff listdiff db sgsis the list of difference betweendband package signaturessgs.
val update : ?err:Log.t -> ?note:Log.t -> ?progress:bool -> db -> diff list -> dbudpate ~err ~note ~progress db diffsisdbupdated according todiffs.erris used to report errors (defaults toLog.err),noteto report indexing operations (defaults toLog.nil) andprogressto indicate if progress should be reported onnote(defaults tofalse).