Not sure if it's better to be extracted into `ASTUnit`.