def apply()

in onnxconverter_common/optimizer.py [0:0]


    def apply(self, node_list):
        # make a copy of self.begin.precedence
        precedence_list = list(self.begin.precedence)
        for branch in precedence_list:
            if branch.is_reserved:
                return None, False
        # make a copy of self.end_p.successor
        successor_list = list(self.begin.successor)

        output_name = ''
        for suc in successor_list:
            if suc.origin is None:
                output_name = list(self.begin.output.values())[0]
                fan_in_node_output_name = 'fan_in_adjustment_out' + str(FanInSolution.number)
                self.begin.out_redirect(output_name, fan_in_node_output_name)
                FanInSolution.number = FanInSolution.number + 1
                for suc_2 in successor_list:
                    suc_2.in_redirect(output_name, fan_in_node_output_name)

        for suc in successor_list:
            if suc.origin is None:
                transpose_output_name = [output_name]
            else:
                transpose_output_name = ['fan_in_adjustment_out' + str(FanInSolution.number)]

            if self.perm == []:
                nnode = LinkedNode(
                    helper.make_node(
                        'Transpose',
                        ['fan_in_adjustment_in' + str(FanInSolution.number)],
                        transpose_output_name,
                        name='TransposeFanIn_succ_' + str(FanInSolution.number)))
            else:
                nnode = LinkedNode(
                    helper.make_node(
                        'Transpose',
                        ['fan_in_adjustment_in' + str(FanInSolution.number)],
                        transpose_output_name,
                        perm=self.perm,
                        name='TransposeFanIn_succ_' + str(FanInSolution.number)))
            FanInSolution.number = FanInSolution.number + 1
            node_list = Solution.add_siso_node(node_list, self.begin, suc, list(self.begin.output.values())[0], nnode)

        for branch in precedence_list:
            node_list = Solution.delete_node_1ton(node_list, branch.get_precedence_by_idx(0), branch, self.begin)
        return node_list, True