Я хочу проверить один входной параметр, который является функциональным объектом или нет. Модули erlang is_function
и fun_info
не одобрены, поскольку они действительно не экспортируются модулем или нет.Как проверить объект функции действителен или нет
ответ
Я не уверен, если я правильно понял ваш вопрос, но если вы пытаетесь понять, будет ли экспортироваться функция или не из данного модуля, вы можете использовать функцию erlang:function_exported/3:
возвращения true, если модуль Module загружен и содержит экспортированную функцию Function/Arity; в противном случае - false.
модуль: module_info (экспорт)
Я знаю эту функцию, но я думаю, что существует, может быть, гораздо лучший выбор. Спасибо. –
Чтобы узнать, если функция sort/2
экспортируется модулем lists
, загружен ли он или нет (см Amiramix comment), вы можете использовать :
lists:member({sort, 2}, lists:module_info(exports)).
Если вы не против функции Arity, вы можете использовать:
case lists:keyfind(sort, 1, lists:module_info(exports)) of
{sort, _} -> true;
false -> false
end.
- 1. Как проверить объект HttpServletResponse действителен
- 2. Проверить объект DJANGO действителен
- 3. Как проверить, действителен ли торрент Infohash или нет?
- 4. Как проверить введенный шаблон регулярного выражения действителен или нет
- 5. iOS - Как проверить, что файл pem pem действителен или нет?
- 6. Как я могу проверить, что введенный номер действителен или нет?
- 7. Как проверить, действителен ли URL-адрес или нет
- 8. Как проверить введенный пользователем URL-адрес действителен или нет?
- 9. Как проверить токен web api действителен или нет в angularjs
- 10. Проверить объект null или нет
- 11. Как проверить, выделен ли объект или нет?
- 12. Еще один способ проверить URL-адрес изображения действителен или нет
- 13. Объект не поддерживает свойство или метод «действителен»
- 14. Проверьте, действителен ли объект?
- 15. Не перенаправляется, если ключ действителен или нет.
- 16. å в файле xml действителен или нет?
- 17. Чтобы проверить, пустой объект или нет
- 18. Как подтвердить введенный формат даты действителен или нет?
- 19. Под кодом C действителен или нет?
- 20. Как проверить, действителен ли элемент DOM и/или атрибут?
- 21. Как на сайте SSL-сертификат действителен или нет?
- 22. Как проверить, нет ли факториала или нет?
- 23. C проверить, действителен ли указатель?
- 24. Как проверить номер телефона действителен или нет, как электронная почта MX запись
- 25. Как проверить, установлена ли ссылка на объект или нет
- 26. Как проверить, является ли объект нулевым или нет?
- 27. Как проверить, пуст ли объект csv.DictReader или нет
- 28. Как проверить объект существует или нет в оракуле
- 29. как проверить объект выходит или нет с точки зрения ROR
- 30. Как проверить, является ли объект нулевым или нет, кроме == null
спасибо. Вы гораздо более знакомы с библиотекой Эрланг, чем я. –
'erlang: function_exported/3' не лучший выбор, потому что он вернет' false', если модуль не загружен, даже если определенная функция экспортируется. 'module_info', как было предложено другим ответом, может быть лучше (модуль' code' содержит еще несколько других вариантов). – Amiramix