parameters: (graph)
return_statement: return list(output_list)
docstring: search output list in recursive method
          :param graph:
          :return:
docstring_summary: search output list in recursive method
          :param graph:
          :return:
docstring_tokens: search output list in recursive method : param graph : : return :
function: def search_output_list(graph):
          """
          search output list in recursive method
          :param graph:
          :return:
          """
          output_list = set()
          graph_cp = graph.copy()
  
          def recursive_search(node):
              if node.get('out_search_flag') is not None:
                  return set()
              node['out_search_flag'] = True
              outputs = node['output']
              result = set()
              if len(outputs) == 0:
                  result.add(node['name'])
              else:
                  for i in outputs:
                      result |= recursive_search(graph[i['name']])
              return result
  
          for i in graph_cp.values():
              output_list |= recursive_search(i)
          return list(output_list)
function_tokens: def search_output_list ( graph ) : output_list = set ( ) graph_cp = graph . copy ( ) def recursive_search ( node ) : if node . get ( 'out_search_flag' ) is not None : return set ( ) node [ 'out_search_flag' ] = True outputs = node [ 'output' ] result = set ( ) if len ( outputs ) == 0 : result . add ( node [ 'name' ] ) else : for i in outputs : result |= recursive_search ( graph [ i [ 'name' ] ] ) return result for i in graph_cp . values ( ) : output_list |= recursive_search ( i ) return list ( output_list )