Abstract Syntax Tree
AST はソースコードの構文構造を木構造で抽象化したもので、各ノードが構文構成要素を表すコンパイラの中核データ構造である。
目的
プログラム構造の標準表現であり、コンパイル、解析、変換、ツール開発に用いられる。
メカニズム
構文解析器がトークン列から AST を構築する。ノード型:宣言、式、文、パターン等。AST 走査により型検査、最適化、コード生成を行う。Babel/ESLint は AST に基づき JS を変換・解析する。
ユースケース
- コンパイラの実装
- コードツール
- スタティック解析