Модуль Load_path
module Load_path: sig .. end
Управление каталогами включаемых файлов.
Этот модуль предоставляет высокоуровневый интерфейс для поиска файлов в пути загрузки, который формируется из флагов командной строки -I и -H, а также нескольких других параметров.
Предполагается, что содержимое каталогов включаемых файлов не меняется во время выполнения компилятора.
val add_dir : hidden:bool -> string -> unit
Добавить каталог в конец пути загрузки (то есть с наименьшим приоритетом).
val remove_dir : string -> unit
Удалить каталог из пути загрузки
val reset : unit -> unit
Удалить все каталоги
module Dir: sig .. end
type auto_include_callback = (Dir.t -> string -> string option) -> string -> string
Тип функций обратного вызова для init ~auto_include
val no_auto_include : auto_include_callback
Без автоматического включения каталогов: при отсутствии файла в пути загрузки, как обычно, возникает исключение Not_found.
val init : auto_include:auto_include_callback -> visible:string list -> hidden:string list -> unit
init ~visible ~hidden — то же, что и reset ();
List.iter add_dir (List.rev hidden);
List.iter add_dir (List.rev visible)
val auto_include_otherlibs : (string -> unit) -> auto_include_callback
auto_include_otherlibs alert — функция обратного вызова, передаваемая в Load_path.init; она автоматически добавляет -I +lib в путь загрузки после вызова alert lib.
val get_path_list : unit -> string list
Вернуть список каталогов, переданных в add_dir к настоящему моменту.
type paths = {
visible :
| |
:
|
} val get_paths : unit -> paths
Вернуть каталоги, переданные в add_dir к настоящему моменту.
val find : string -> string
Найти файл в пути загрузки. Если файл не найден, вызвать исключение Not_found. Эта функция оптимизирована для случая, когда имя файла является базовым именем, то есть не содержит разделителя каталогов.
val find_normalized : string -> string
То же, что и find, но также выполняет поиск по нормализованному имени модуля (см. Misc.normalized_unit_filename); то есть, если имя — Foo.ml, допускается совпадение с /path/Foo.ml и /path/foo.ml.
type visibility =
|
| Visible
|
|
| Hidden
|
val find_normalized_with_visibility : string -> string * visibility
То же, что и find_normalized, но также сообщает, был ли файл cmi найден в каталоге -I (видимом) или в каталоге -H (скрытом).
val add : Dir.t -> unit
Прежнее название для Load_path.append_dir
val append_dir : Dir.t -> unit
append_dir d добавляет d в конец пути загрузки (то есть с наименьшим приоритетом).
val prepend_dir : Dir.t -> unit
prepend_dir d добавляет d в начало пути загрузки (то есть с наивысшим приоритетом).
val get_visible : unit -> Dir.t list
То же, что и get_paths (), но возвращает Dir.t list и не включает пути -H.
© 1995-2026 INRIA.
https://ocaml.org/manual/5.5/api/compilerlibref/Load_path.html