OCaml compiler library : Load_path

`sig
val add_dir : hidden:bool -> string -> unit
val remove_dir : string -> unit
val reset : unit -> unit
module Dir :
sig
type t
val create : hidden:bool -> string -> Load_path.Dir.t
val path : Load_path.Dir.t -> string
val files : Load_path.Dir.t -> string list
val hidden : Load_path.Dir.t -> bool
val find : Load_path.Dir.t -> string -> string option
val find_normalized : Load_path.Dir.t -> string -> string option
end
type auto_include_callback =
(Load_path.Dir.t -> string -> string option) -> string -> string
val no_auto_include : Load_path.auto_include_callback
val init :
auto_include:Load_path.auto_include_callback ->
visible:string list -> hidden:string list -> unit
val auto_include_otherlibs :
(string -> unit) -> Load_path.auto_include_callback
val get_path_list : unit -> string list
type paths = { visible : string list; hidden : string list; }
val get_paths : unit -> Load_path.paths
val find : string -> string
val find_normalized : string -> string
type visibility = Visible | Hidden
val find_normalized_with_visibility :
string -> string * Load_path.visibility
val add : Load_path.Dir.t -> unit
val append_dir : Load_path.Dir.t -> unit
val prepend_dir : Load_path.Dir.t -> unit
val get_visible : unit -> Load_path.Dir.t list
end`