Abstract Syntax Tree
Un AST est une représentation arborescente abstraite de la structure syntaxique du code source, où chaque nœud représente une construction syntaxique ; c'est la structure de données centrale d'un compilateur.
Objectif
Représentation standard de la structure du programme, utilisée pour la compilation, l'analyse, la transformation et le développement d'outils.
Mécanisme
L'analyseur syntaxique construit l'AST à partir du flux de tokens. Types de nœuds : déclarations, expressions, instructions, motifs. Le parcours de l'AST sert à la vérification de types, l'optimisation et la génération de code. Babel/ESLint transforment/analysent JS à partir de l'AST.
Cas d’usage
- Implémentation de compilateurs
- Outils de code
- Analyse statique