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

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

9
задан Greg Campbell 24 March 2010 в 19:08
поделиться

3 ответа

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

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

12
ответ дан 4 December 2019 в 08:32
поделиться

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

7
ответ дан 4 December 2019 в 08:32
поделиться

Чтение из правил программирования Erlang :

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

6
ответ дан 4 December 2019 в 08:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: