cfg.py 文件源码

python
阅读 26 收藏 0 点赞 0 评论 0

项目:pyt 作者: SW10IoT 项目源码 文件源码
def add_function(self, call_node, definition):
        try:
            self.function_index += 1
            def_node = definition.node
            saved_variables = self.save_local_scope(def_node.lineno)

            parameters = self.save_actual_parameters_in_temp(call_node.args, Arguments(def_node.args), call_node.lineno)

            self.filenames.append(definition.path)
            self.create_local_scope_from_actual_parameters(call_node.args, Arguments(def_node.args), def_node.lineno)
            function_nodes = self.get_function_nodes(definition)
            self.filenames.pop() # Maybe move after restore nodes
            restore_nodes = self.restore_saved_local_scope(saved_variables, parameters, def_node.lineno)
            self.return_handler(call_node, function_nodes, restore_nodes)
            self.function_return_stack.pop()

        except IndexError:
            error_call = get_call_names_as_string(call_node.func)
            print('Error: Possible nameclash in "{}". Call omitted!\n'.format(error_call))


        return self.nodes[-1]
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号