В Erlang как импортировать все функции из модуля?
Я не могу понять, как импортировать все функции модуля без указания отдельных функций.
3 ответов
Как говорит Кристиан, " невозможно импортировать все функции из модуля.- У компилятора нет import_all
директива, и я думаю, что это делается намеренно, чтобы препятствовать чрезмерному импорту функций.
импорт функций вместо их полной квалификации M:F(...)
обычно плохой стиль. Существует семантическая разница между вызовом локальной функции модуля и функции в другом модуле (правила загрузки кода), поэтому я думаю, что лучше сделать внешние вызовы явными. Один возможно, можно сделать исключения для импорта функций модуля dict/lists/sets, поскольку они обычно понимаются и вряд ли изменятся во время обновления кода.
чтение Правила Программирования Erlang:
не использовать -импорт, используя его, делает код труднее читать, так как вы не можете непосредственно посмотреть в каком модуле функция определяемый. Использовать exref (перекрестная ссылка Инструмент) для поиска зависимостей модулей.