Модуль Build_path_prefix_map
module Build_path_prefix_map: sig .. end
Переписывание путей для воспроизводимых сборок
Предупреждение: этот модуль нестабилен и входит в состав compiler-libs.
type path = string
type path_prefix = string
type error_message = string
val encode_prefix : path_prefix -> string
val decode_prefix : string -> (path_prefix, error_message) result
type pair = {
target :
| |
source :
|
} val encode_pair : pair -> string
val decode_pair : string -> (pair, error_message) result
type map = pair option list
val encode_map : map -> string
val decode_map : string -> (map, error_message) result
val rewrite_first : map -> path -> path option
rewrite_first map path пытается найти в map источник, являющийся префиксом входного значения path. Если это удаётся, он заменяет этот префикс соответствующей целью. Если это не удаётся, он просто возвращает None.
val rewrite_all : map -> path -> path list
rewrite_all map path находит в map все источники, являющиеся префиксами входного значения path. Для каждого совпавшего источника, в порядке приоритета, он заменяет этот префикс соответствующей целью и добавляет результат в возвращаемый список. Если совпадений нет, он просто возвращает [].
val rewrite : map -> path -> path
rewrite path использует rewrite_first, чтобы попытаться найти соответствие для пути. Если оно найдено, функция возвращает его, иначе просто возвращает path.
val invert_all : map -> path -> path list
invert_all map path находит в map все цели, являющиеся префиксами входного значения path. Для каждой совпавшей цели, в порядке приоритета, он заменяет этот префикс соответствующим источником и добавляет результат в возвращаемый список. Если совпадений нет, он просто возвращает [].
© 1995-2026 INRIA.
https://ocaml.org/manual/5.5/api/compilerlibref/Build_path_prefix_map.html