sig   type pkg_id = string * Omod.fpath   val pp_pkg_id : Format.formatter -> Omod_support.Cobj.pkg_id -> unit   type dep = string * Omod_support.Digest.t option   val pp_dep : Format.formatter -> Omod_support.Cobj.dep -> unit   val spec_of_string :     string ->     (string option * string * string list, string) Pervasives.result   type kind = Cmi | Cmo | Cmx   val kind_of_string : string -> Omod_support.Cobj.kind option   val kind_to_string : Omod_support.Cobj.kind -> string   val exts : Omod.Private.String.Set.t   type t   val v :     kind:Omod_support.Cobj.kind ->     pkg_id:Omod_support.Cobj.pkg_id ->     name:string ->     iface_digest:Omod_support.Digest.t option ->     iface_deps:Omod_support.Cobj.dep list ->     in_archive:bool ->     path:Omod.fpath ->     path_loads:Omod_support.Cobj.t list Lazy.t -> Omod_support.Cobj.t   val add_file :     pkg_id:Omod_support.Cobj.pkg_id ->     Omod_support.Cobj.t list ->     Omod.fpath -> (Omod_support.Cobj.t list, string) Pervasives.result   val kind : Omod_support.Cobj.t -> Omod_support.Cobj.kind   val pkg_id : Omod_support.Cobj.t -> Omod_support.Cobj.pkg_id   val name : Omod_support.Cobj.t -> string   val variant : Omod_support.Cobj.t -> string   val iface_digest : Omod_support.Cobj.t -> Omod_support.Digest.t option   val iface_deps : Omod_support.Cobj.t -> Omod_support.Cobj.dep list   val in_archive : Omod_support.Cobj.t -> bool   val path : Omod_support.Cobj.t -> Omod.fpath   val path_loads : Omod_support.Cobj.t -> Omod_support.Cobj.t list   val to_dep : Omod_support.Cobj.t -> Omod_support.Cobj.dep   val is_kind : Omod_support.Cobj.kind -> Omod_support.Cobj.t -> bool   val equal : Omod_support.Cobj.t -> Omod_support.Cobj.t -> bool   val compare : Omod_support.Cobj.t -> Omod_support.Cobj.t -> int   val ui_compare : Omod_support.Cobj.t -> Omod_support.Cobj.t -> int   val pp : Format.formatter -> Omod_support.Cobj.t -> unit   module Index :     sig       type cobj = Omod_support.Cobj.t       type t       val empty : Omod_support.Cobj.Index.t       val of_cobjs :         ?init:Omod_support.Cobj.Index.t ->         Omod_support.Cobj.Index.cobj list -> Omod_support.Cobj.Index.t       val cobjs :         Omod_support.Cobj.Index.t -> Omod_support.Cobj.Index.cobj list       val cobjs_by_name :         Omod_support.Cobj.Index.t ->         Omod_support.Cobj.Index.cobj list Omod.Private.String.Map.t       val cobjs_by_digest :         Omod_support.Cobj.Index.t ->         Omod_support.Cobj.Index.cobj list Omod_support.Digest.Map.t       val cobjs_by_pkg_name :         Omod_support.Cobj.Index.t ->         Omod_support.Cobj.Index.cobj list Omod.Private.String.Map.t       val cobjs_for_mod_name :         string ->         Omod_support.Cobj.Index.t -> Omod_support.Cobj.Index.cobj list       val cobjs_for_iface_digest :         Omod_support.Digest.t ->         Omod_support.Cobj.Index.t -> Omod_support.Cobj.Index.cobj list       val cobjs_for_pkg_name :         string ->         Omod_support.Cobj.Index.t -> Omod_support.Cobj.Index.cobj list       val cobjs_for_dep :         Omod_support.Cobj.dep ->         Omod_support.Cobj.Index.t -> Omod_support.Cobj.Index.cobj list       val cobjs_for_dep_res :         variants:Omod.Private.String.Set.t ->         sat:(Omod_support.Cobj.Index.cobj -> bool) ->         kind:Omod_support.Cobj.kind ->         Omod_support.Cobj.dep ->         Omod_support.Cobj.Index.t -> Omod_support.Cobj.Index.cobj list     end   type res = Omod_support.Cobj.t Omod.Private.String.Map.t   val resolve_deps :     variants:Omod.Private.String.Set.t ->     sat:(Omod_support.Cobj.t -> bool) ->     kind:Omod_support.Cobj.kind ->     Omod_support.Cobj.Index.t ->     root_alts:Omod_support.Cobj.t list list ->     (Omod_support.Cobj.res list, string) Pervasives.result   val fold_res :     Omod_support.Cobj.res -> (Omod_support.Cobj.t -> '-> 'a) -> '-> 'a   val loads :     variants:Omod.Private.String.Set.t ->     sat:(Omod_support.Cobj.t -> bool) ->     kind:Omod_support.Cobj.kind ->     Omod_support.Cobj.Index.t ->     root_alts:Omod_support.Cobj.t list list ->     (Omod.fpath list list, string) Pervasives.result end