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-2024 INRIA.
https://ocaml.org/manual/5.2/api/compilerlibref/Load_path.html

Spec-Zone.ru

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