ExPanda

Motor d'expansi贸 completa de macros per a introspecci贸 i depuraci贸 de l'AST d'Elixir.

Active ElixirMacro ExpansionASTDebugging 4 2524
ExPanda

expandeix macros d'Elixir de forma recursiva per revelar l'AST subjacent per a introspecci贸, depuraci贸 i an脿lisi est脿tica.

La Proposta

El sistema de macros d'Elixir permet crear potents llenguatges de domini espec铆fic com Ecto, Phoenix i Absinthe. Tanmateix, depurar expansions de macros multinivell o realitzar an脿lisis est脿tiques en codi generat per macros pot ser complex.

ExPanda desplega recursivament les macros d'Elixir fins que nom茅s queden nodes de l'AST del llenguatge base. Mira el codi exacte generat per macros niades, rastreja els passos d'expansi贸 i lliura ASTs nets a motors d'an脿lisi est脿tica.


Per qu猫 ExPanda?

Expansi贸 Recursiva Completa

Expandeix macros niades completament fins a arribar a les construccions primitives de l'AST d'Elixir.

Rastreig Pas a Pas

Inspecciona els estats intermedis de la macro per identificar on ocorren transformacions no desitjades.

Sensible a l'Entorn

Respecta contextos de m貌dul, 脿lies i importacions durant l'expansi贸.

Base per a Eines

Serveix com a capa de normalitzaci贸 de l'AST per a analitzadors est脿tics, formatadors i eines de refactoritzaci贸.


La Tecnologia

Llenguatge Elixir
Tasca Principal Expansi贸 Recursiva de Macros i Normalitzaci贸 d'AST
Objectiu Depuraci贸 de Macros i An脿lisi Est脿tica
Paquet Hex ex_panda

Per a Qui 脡s

  • Autors de Metaprogramaci贸 i Macros que depuren expansions complexes en llibreries Elixir.
  • Creadors d'Eines d'An脿lisi Est脿tica que requereixen codi completament expandit.
  • Enginyers Elixir Curiosos que desitgen comprendre com s'expandeixen els DSLs de Phoenix i Ecto.

En Resum

Desplega canalitzacions complexes de macros en Elixir fins a obtenir construccions AST pures amb ExPanda.