在AST中,IF节点是否有大量分支?

时间:2017-02-22 03:54:31

标签: parsing abstract-syntax-tree

这是我所描述的图片: enter image description here 我的问题是,在抽象语法树中,IF节点是否应该有大量的分支?想象一个IF节点,它直接连接到数百个语句。感觉不对,在视觉形式上看起来非常荒谬。这是AST的正确形成还是我错了?

1 个答案:

答案 0 :(得分:0)

以这种方式试试。这也是您使用CodeDOM等内容时所获得的。

AST of if (a > b) {a = c; fun(c); otherstuff}

实际上,TrueBodyFalseBody每个人都会有一个孩子 - StatementGroup。反过来,这个区块中的陈述会有尽可能多的孩子。同样,如果有多个and / or条件,那么Condition节点将有一个单独的节点,比如说AndCondition,子节点数与子句一样多。