概要
ClangでASTを出力するには
clang -Xclang -ast-dump -fsyntax-only sample.c
とすれば出る。
- Clang3.5くらいから、木構造をキレイに表示してくれる(色付き)
- pythonからASTが取得できる
ASTの構成要素
Decl : Declare, 宣言
- FunctionDecl : 関数宣言
- ParamVarDecl : 関数の引数の宣言
- VarDecl : 変数の宣言
Stmt : Statement, 文
- CompoundStmt : ブロック文
- DeclStmt : 変数の宣言文(VarDeclから成る)
- ForStmt : For文
- IfStmt : If文
- ReturnStmt : Return文
Expr : Expression, 式
Literal : リテラル
- IntegerLiteral : 整数
- StringLiteral : 文字列