parsing ast nodes help to get callfunc values.
Peter Otten
__peter__ at web.de
Tue Oct 30 17:15:51 EDT 2007
Glich wrote:
> If some one could show me how to use something called "visitor"?
import compiler
module = """
def fun1():
print "Hi"
fun2()
fun4()
def fun2():
pass
def fun4():
pass
fun1()
fun3(fun2())
"""
class Visitor:
def visitCallFunc(self, node):
print node.lineno, node.node.name
for child in node.getChildNodes():
compiler.walk(child, self)
if __name__ == "__main__":
ast = compiler.parse(module)
visitor = Visitor()
compiler.walk(ast, visitor)
> I did not understand the documentation and I am in need of more SIMPLE
> example code.
If my example is not sufficient I encourage you to take a look into the
source code of the compiler package.
Peter
More information about the Python-list
mailing list