Kernel.ParallelCompiler
A module responsible for compiling files in parallel.
Summary
Functions
- files(files, options \\ [])
-
Compiles the given files
- files_to_path(files, path, options \\ [])
-
Compiles the given files to the given path. Read
files/2
for more information
Functions
files(files, options \\ [])
Compiles the given files.
Those files are compiled in parallel and can automatically detect dependencies between them. Once a dependency is found, the current file stops being compiled until the dependency is resolved.
If there is an error during compilation or if warnings_as_errors
is set to true
and there is a warning, this function will fail with an exception.
This function accepts the following options:
-
:each_file
- for each file compiled, invokes the callback passing the file -
:each_long_compilation
- for each file that takes more than a given timeout (see the:long_compilation_threshold
option) to compile, invoke this callback passing the file as its argument -
:long_compilation_threshold
- the timeout (in seconds) after the:each_long_compilation
callback is invoked; defaults to10
-
:each_module
- for each module compiled, invokes the callback passing the file, module and the module bytecode -
:dest
- the destination directory for the BEAM files. When usingfiles/2
, this information is only used to properly annotate the BEAM files before they are loaded into memory. If you want a file to actually be written todest
, usefiles_to_path/3
instead.
Returns the modules generated by each compiled file.
files_to_path(files, path, options \\ [])
Compiles the given files to the given path. Read files/2
for more information.
© 2012 Plataformatec
Licensed under the Apache License, Version 2.0.
https://hexdocs.pm/elixir/1.4.5/Kernel.ParallelCompiler.html