ExPanda
Движок полного раскрытия макросов для отладки и интроспекции AST в Elixir.
рекурсивно раскрывает макросы Elixir для отображения базового AST в целях отладки и статического анализа.
Идея
Система макросов Elixir позволяет создавать такие DSL, как Ecto и Phoenix. Однако отладка многоуровневых макросов или статический анализ генерируемого кода часто затруднены.
ExPanda рекурсивно разворачивает макросы Elixir до узлов базового синтаксического дерева. Посмотрите точный код, создаваемый макросами, отслеживайте шаги раскрытия и передавайте чистый AST в статически линтеры.
Почему ExPanda?
Полное Рекурсивное Раскрытие
Разворачивает вложенные макросы до примитивных AST-конструкций Elixir.
Пошаговая Отладка
Инспектируйте промежуточные состояния макросов для локализации ошибок.
Учет Контекста
Учитывает алиасы, импорты и контексты модулей при раскрытии.
Фундамент для Инструментов
Служит слоем нормализации AST для анализаторов кода, форматировщиков и рефакторинга.
Технологии
| Язык | Elixir |
| Задача | Рекурсивное Раскрытие Макросов и Нормализация AST |
| Цель | Отладка Макросов и Статический Анализ |
| Hex Пакет |
ex_panda
|
Для Кого
- Разработчиков Макросов , отлаживающих сложные вложенные макросы в библиотеках Elixir.
- Создателей Инструментов Анализа , которым требуется полностью раскрытый код.
- Elixir-Инженеров , желающих понять, как разворачиваются DSL Phoenix и Ecto.
Итог
Разворачивайте конвейеры макросов Elixir до базовых структур AST с помощью ExPanda.