Доступ к AST используется для создания symtable

В моей программе мне нужны как symtable, так и AST куска кода.

В настоящее время я занимаюсь:

import ast
import symtable

code = 'foo'
ast.parse(code)
symtable.symtable(code, '?', 'exec')

Но потому что symtable() создает AST сам, я на самом деле создаю AST дважды. И так как мой код должен работать быстро, я бы лучше использовал AST, который уже был создан для symtable, чем для создания второго, который занимает дополнительное время.

Итак, есть ли способ получить доступ к AST, который был создан для создания symtable? Другими словами, могу ли я иметь как AST, так и symtable для одного и того же кода, не создавая AST дважды?

0 ответов

Другие вопросы по тегам