Spec-Zone.ru › Elixir 1.5

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 - для каждого скомпилированного модуля вызывает обратный вызов, передавая файл, модуль и байткод модуля

  • :each_warning - для каждого предупреждения вызывает обратный вызов, передавая файл, номер строки и сообщение о предупреждении

  • :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.5.3/Kernel.ParallelCompiler.html

Spec-Zone.ru

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