parameters: (op, start, limit, dtype_lst, func)
return_statement: return ret_name
docstring: Adds a _ArrayToList node in the func for op.outputs[start:limit].
docstring_summary: Adds a _ArrayToList node in the func for op.outputs[start:limit].
docstring_tokens: Adds a _ArrayToList node in the func for op . outputs [ start : limit ] .
function: def _add_output_list(op, start, limit, dtype_lst, func):
    """Adds a _ArrayToList node in the func for op.outputs[start:limit]."""
    ret_name = op.name + "_Lst_" + str(start) + "_" + str(limit)
    num = limit - start
    assert len(dtype_lst) == num
    # Adds an identity node for each element in the array N*T so that
    # uses of each element can be added easily later. These Identity
    # will be eliminated before graph execution.
    for i in xrange(num):
      node = function_pb2.FunctionDef.Node()
      node.op = "Identity"
      node.arg.append(ret_name + ":" + str(i))
      node.ret.append(_make_argname_from_tensor_name(op.outputs[i].name))
      node.attr["T"].CopyFrom(attr_value_pb2.AttrValue(type=dtype_lst[i]))
      func.node.extend([node])
    return ret_name
function_tokens: def _add_output_list ( op , start , limit , dtype_lst , func ) : ret_name = op . name + "_Lst_" + str ( start ) + "_" + str ( limit ) num = limit - start assert len ( dtype_lst ) == num # Adds an identity node for each element in the array N*T so that # uses of each element can be added easily later. These Identity # will be eliminated before graph execution. for i in xrange ( num ) : node = function_pb2 . FunctionDef . Node ( ) node . op = "Identity" node . arg . append ( ret_name + ":" + str ( i ) ) node . ret . append ( _make_argname_from_tensor_name ( op . outputs [ i ] . name ) ) node . attr [ "T" ] . CopyFrom ( attr_value_pb2 . AttrValue ( type = dtype_lst [ i ] ) ) func . node . extend ( [ node ] ) return ret_name