【问题标题】:How to represent clang AST in JSON format?如何以 JSON 格式表示 clang AST?
【发布时间】:2020-03-24 22:37:02
【问题描述】:

clang-check -ast-dump -ast-dump-filter=<function_name> main.c 给出特定代码的 AST(仅是函数声明)。

我们如何以 JSON 格式表示生成的 AST?

PS:我只希望 AST 用于函数声明。

【问题讨论】:

    标签: json clang abstract-syntax-tree llvm-clang


    【解决方案1】:

    使用-ast-dump=json 参数调用clang

    这是最近才实施的(2019 年 5 月),因此您需要最新版本的 Clang。

    详情请见https://reviews.llvm.org/D60910

    还有一个库可以通过 https://github.com/facebook/facebook-clang-pluginshttps://github.com/facebook/facebook-clang-pluginslibTooling 导出更多可用的低级信息

    【讨论】:

    • -ast-dump=json 支持 clang 但不支持 clang-check 这适用于 C 程序而不是 C++
    猜你喜欢
    • 2019-05-25
    • 2013-09-04
    • 1970-01-01
    • 2011-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-26
    相关资源
    最近更新 更多