class_docstr: Turns while loops in TensorFlow dataflow graph into the functional form:
  while(cond_function, body_function)
  
  Usage:
  Given a graph in tfssa (the NetworkEnsemble defined in network.py) form:
  
  This will functionalize *ONE* loop in the main function.
  
      f = FunctionalizeLoops()
      ret = f.functionalize_loops(self, tfssa, "main")
  
  if ret is True, one loop has been functionalized, and the new functions
  added to tfssa. If False, there is no loop to functionalize.
  
  Generally, repeated calls to this will be necessary to catch all loops.
  
  Instead, use functionalize_loops.
code: def __init__(self):
      self.exits = None
      self.merges = None
      self.enters = None
      self.constant_enters = None
      self.switches = None
      self.subgraph = None
      self.loopcond = None
      self.is_constant = None
      self.next_iterations = None
      self.cond = None
      self.body = None
  
file_path: turicreate/src/external/coremltools_wrap/coremltools/coremltools/converters/mil/frontend/tensorflow/tf_graph_pass/functionalize_loops.py
imports: from __future__ import print_function
  from __future__ import division
  from __future__ import absolute_import
  from ..parsed_tf_node import ParsedTFNode
  from ..basic_graph_ops import *
  from ..tfssa import SSAFunction
  from .visitors import FindAllReachableNodes, FindImmediateDownstreamNodes, FindImmediateUpstreamNodes, FindSubgraph
  import logging
label_desc: Use image node_id 1 to create a new FunctionalizeLoops object from inherited base classes: object with example: obj = FunctionalizeLoops()