我确实知道 AST 节点的“坐标”属性给出了行号,但默认情况下它的列号设置为无。有没有办法将其设置为真实的列号?
问问题
134 次
1 回答
0
Github 上的master
分支版本尚未正式发布,但在coord
AST 节点的属性中确实包含一列。
examples/explore_ast.py
如果您取消注释该行,该示例可以显示这一点showcoord=True
。这是一个转储的 AST 片段:
FileAST: (at None)
Typedef: Node, [], ['typedef'] (at <none>:2:17)
TypeDecl: Node, [] (at <none>:2:17)
IdentifierType: ['int'] (at <none>:2:13)
Typedef: Hash, [], ['typedef'] (at <none>:2:23)
TypeDecl: Hash, [] (at <none>:2:23)
IdentifierType: ['int'] (at <none>:2:13)
FuncDef: (at <none>:4:10)
Decl: HashPrint, [], [], [] (at <none>:4:10)
FuncDecl: (at <none>:4:10)
ParamList: (at <none>:4:24)
Decl: hash, [], [], [] (at <none>:4:24)
PtrDecl: [] (at <none>:4:24)
TypeDecl: hash, [] (at <none>:4:26)
该(at <none>:2:17)
部分的意思是“在文件<none>
,第 2 行,第 17 列”(文件是<none>
因为该示例只是从字符串解析)。
于 2017-05-24T03:21:53.437 回答