Загрузка модулей
Функция Base.require
отвечает за загрузку модулей и управление кэшем предварительной компиляции. Это реализация оператора import
.
Экспериментальные функции
Описанные ниже функции являются экспериментальными и не входят в стабильную версию API Julia. Перед их использованием для сборки уточните, каков их текущий статус и могут ли они измениться в ближайшее время.
Обратные вызовы загрузки пакетов
Для отслеживания пакетов, загружаемых функцией Base.require
, можно зарегистрировать обратный вызов.
loaded_packages = Base.PkgId[]
callback = (pkg::Base.PkgId) -> push!(loaded_packages, pkg)
push!(Base.package_callbacks, callback)
Это будет выглядеть примерно так:
julia> using Example
julia> loaded_packages
1-element Vector{Base.PkgId}:
Example [7876af07-990d-54b4-ab0e-23690620f79a]