`sig
type intf_or_impl = Intf | Impl
type modname = string
type filename = string
type file_prefix = string
type error = Invalid_encoding of Unit_info.filename
exception Error of Unit_info.error
val modulize : string -> Unit_info.modname
val normalize : string -> string
val lax_modname_from_source : Unit_info.filename -> Unit_info.modname
val strict_modname_from_source : Unit_info.filename -> Unit_info.modname
val is_unit_name : Unit_info.modname -> bool
type t
val source_file : Unit_info.t -> Unit_info.filename
val prefix : Unit_info.t -> Unit_info.file_prefix
val modname : Unit_info.t -> Unit_info.modname
val kind : Unit_info.t -> Unit_info.intf_or_impl
val check_unit_name : Unit_info.t -> unit
val make :
?check_modname:bool ->
source_file:Unit_info.filename ->
Unit_info.intf_or_impl -> Unit_info.file_prefix -> Unit_info.t
module Artifact :
sig
type t
val source_file : Unit_info.Artifact.t -> Unit_info.filename option
val prefix : Unit_info.Artifact.t -> Unit_info.file_prefix
val filename : Unit_info.Artifact.t -> Unit_info.filename
val modname : Unit_info.Artifact.t -> Unit_info.modname
val from_filename : Unit_info.filename -> Unit_info.Artifact.t
end
val cmi : Unit_info.t -> Unit_info.Artifact.t
val cmo : Unit_info.t -> Unit_info.Artifact.t
val cmx : Unit_info.t -> Unit_info.Artifact.t
val obj : Unit_info.t -> Unit_info.Artifact.t
val cmt : Unit_info.t -> Unit_info.Artifact.t
val cmti : Unit_info.t -> Unit_info.Artifact.t
val annot : Unit_info.t -> Unit_info.Artifact.t
val companion_obj : Unit_info.Artifact.t -> Unit_info.Artifact.t
val companion_cmt : Unit_info.Artifact.t -> Unit_info.Artifact.t
val companion_cmi : Unit_info.Artifact.t -> Unit_info.Artifact.t
val mli_from_source : Unit_info.t -> Unit_info.filename
val mli_from_artifact : Unit_info.Artifact.t -> Unit_info.filename
val is_cmi : Unit_info.Artifact.t -> bool
val find_normalized_cmi : Unit_info.t -> Unit_info.Artifact.t
end`