В Erlang как импортировать все функции из модуля?

Я не могу понять, как импортировать все функции модуля без указания отдельных функций.

3 ответов


Как говорит Кристиан, " невозможно импортировать все функции из модуля.- У компилятора нет import_all директива, и я думаю, что это делается намеренно, чтобы препятствовать чрезмерному импорту функций.

импорт функций вместо их полной квалификации M:F(...) обычно плохой стиль. Существует семантическая разница между вызовом локальной функции модуля и функции в другом модуле (правила загрузки кода), поэтому я думаю, что лучше сделать внешние вызовы явными. Один возможно, можно сделать исключения для импорта функций модуля dict/lists/sets, поскольку они обычно понимаются и вряд ли изменятся во время обновления кода.


невозможно импортировать все функции из модуля.


чтение Правила Программирования Erlang:

не использовать -импорт, используя его, делает код труднее читать, так как вы не можете непосредственно посмотреть в каком модуле функция определяемый. Использовать exref (перекрестная ссылка Инструмент) для поиска зависимостей модулей.