Spec-Zone.ru › OCaml

Модуль 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 : string list;
hidden : string list;
}
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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API