def visit_FunctionDef(self, node):
# Create the stub in the old context.
old_stub = self.parent_stub
self.parent_stub = Stub('def', node.name, old_stub, self.context_stack)
self.add_stub(self.stubs_dict, self.parent_stub)
# Enter the new context.
self.returns = []
self.level += 1
self.context_stack.append(node.name)
for z in node.body:
self.visit(z)
self.context_stack.pop()
self.level -= 1
# Format *after* traversing
# if self.trace_matches or self.trace_reduce:
# if not self.class_name_stack:
# print('def %s\n' % node.name)
self.out('def %s(%s) -> %s' % (
node.name,
self.format_arguments(node.args),
self.format_returns(node)))
self.parent_stub = old_stub
# arguments = (expr* args, identifier? vararg, identifier? kwarg, expr* defaults)
评论列表
文章目录