Kernel.ParallelCompiler
Модуль, отвечающий за компиляцию файлов параллельно.
Краткое описание
Функции
- files(files, options \\ [])
-
Компилирует заданные файлы
- files_to_path(files, path, options \\ [])
-
Компилирует заданные файлы в указанный путь. Подробнее см.
files/2
Функции
files(files, options \\ [])
Компилирует заданные файлы.
Файлы компилируются параллельно и могут автоматически обнаруживать зависимости между ними. При обнаружении зависимости текущий файл останавливается до разрешения зависимости.
В случае ошибки во время компиляции или если warnings_as_errors установлено в true, и присутствует предупреждение, функция завершается с исключением.
Функция принимает следующие параметры:
-
:each_file- для каждого скомпилированного файла вызывает обратный вызов, передавая файл -
:each_long_compilation- для каждого файла, компиляция которого занимает более заданного времени ожидания (см. параметр:long_compilation_threshold), вызывает обратный вызов, передавая файл в качестве аргумента -
:long_compilation_threshold- время ожидания (в секундах) после вызова обратного вызова:each_long_compilation; по умолчанию10 -
:each_module- для каждого скомпилированного модуля вызывает обратный вызов, передавая файл, модуль и байткод модуля -
:dest- целевой каталог для файлов beam. При использованииfiles/2, эта информация используется только для правильного аннотирования файлов beam перед загрузкой в память. Если вы хотите, чтобы файл фактически был записан вdest, используйтеfiles_to_path/3.
Возвращает модули, сгенерированные каждым скомпилированным файлом.
files_to_path(files, path, options \\ [])
Компилирует заданные файлы в указанный путь. Подробнее см. files/2.
© 2012 Plataformatec
Licensed under the Apache License, Version 2.0.
https://hexdocs.pm/elixir/1.3.4/Kernel.ParallelCompiler.html