original_docstring: 
          Infers the connector types of an SDFG, state or subgraph and returns them in a dictionary
          consisting of tuples with node, name and a bool whether it is an input connector
          (`True` for input, `False` for output).
  
          This method does not modify the connectors, meaning it is read-only.
          To apply the changes, use `apply_connector_types`.
  
          It can be executed in different modes, depending on the provided arguments:
          * on an SDFG by only providing `sdfg`
          * on a state by providing `sdfg` and `state`
          * on a subgraph by providing `sdfg`, `state` and `graph`
  
          :param sdfg: The SDFG to infer.
          :param state: The state to infer.
          :param graph: The graph to infer.
          :param inferred: The dictionary of already inferred types.
      
docstring: Infers the connector types of an SDFG, state or subgraph and returns them in a dictionary
  consisting of tuples with node, name and a bool whether it is an input connector
  (`True` for input, `False` for output).
  
  This method does not modify the connectors, meaning it is read-only.
  To apply the changes, use `apply_connector_types`.
  
  
docstring_tokens: Infers the connector types of an SDFG state or subgraph and returns them in a dictionary consisting of tuples with node name and a bool whether it is an input connector ( ` True ` for input ` False ` for output ) . This method does not modify the connectors meaning it is read - only . To apply the changes use ` apply_connector_types ` .
code: def infer_connector_types(sdfg: SDFG,
                            state: SDFGState = None,
                            graph: SubgraphView = None,
                            inferred: TypeInferenceDict = None):
      """
          Infers the connector types of an SDFG, state or subgraph and returns them in a dictionary
          consisting of tuples with node, name and a bool whether it is an input connector
          (`True` for input, `False` for output).
  
          This method does not modify the connectors, meaning it is read-only.
          To apply the changes, use `apply_connector_types`.
  
          It can be executed in different modes, depending on the provided arguments:
          * on an SDFG by only providing `sdfg`
          * on a state by providing `sdfg` and `state`
          * on a subgraph by providing `sdfg`, `state` and `graph`
  
          :param sdfg: The SDFG to infer.
          :param state: The state to infer.
          :param graph: The graph to infer.
          :param inferred: The dictionary of already inferred types.
      """
  
      if inferred is None:
          inferred = TypeInferenceDict()
  
      if sdfg is None:
          raise ValueError('No SDFG was provided')
  
      if state is None and graph is None:
          for state in sdfg.nodes():
              for node in dfs_topological_sort(state):
                  infer_node_connectors(sdfg, state, node, inferred)
  
      elif state is not None and graph is None:
          for node in dfs_topological_sort(state):
              infer_node_connectors(sdfg, state, node, inferred)
      elif state is not None and graph is not None:
          for node in dfs_topological_sort(graph):
              infer_node_connectors(sdfg, state, node, inferred)
      else:
          raise ValueError('Missing some arguments')
  
      return inferred
code_tokens: def infer_connector_types ( sdfg : SDFG , state : SDFGState = None , graph : SubgraphView = None , inferred : TypeInferenceDict = None ) : if inferred is None : inferred = TypeInferenceDict ( ) if sdfg is None : raise ValueError ( 'No SDFG was provided' ) if state is None and graph is None : for state in sdfg . nodes ( ) : for node in dfs_topological_sort ( state ) : infer_node_connectors ( sdfg , state , node , inferred ) elif state is not None and graph is None : for node in dfs_topological_sort ( state ) : infer_node_connectors ( sdfg , state , node , inferred ) elif state is not None and graph is not None : for node in dfs_topological_sort ( graph ) : infer_node_connectors ( sdfg , state , node , inferred ) else : raise ValueError ( 'Missing some arguments' ) return inferred
short_docstring: Infers the connector types of an SDFG, state or subgraph and returns them in a dictionary
  consisting of tuples with node, name and a bool whether it is an input connector
  (`True` for input, `False` for output).
short_docstring_tokens: Infers the connector types of an SDFG state or subgraph and returns them in a dictionary consisting of tuples with node name and a bool whether it is an input connector ( ` True ` for input ` False ` for output ) .
comment: """
          Infers the connector types of an SDFG, state or subgraph and returns them in a dictionary
          consisting of tuples with node, name and a bool whether it is an input connector
          (`True` for input, `False` for output).
  
          This method does not modify the connectors, meaning it is read-only.
          To apply the changes, use `apply_connector_types`.
  
          It can be executed in different modes, depending on the provided arguments:
          * on an SDFG by only providing `sdfg`
          * on a state by providing `sdfg` and `state`
          * on a subgraph by providing `sdfg`, `state` and `graph`
  
          :param sdfg: The SDFG to infer.
          :param state: The state to infer.
          :param graph: The graph to infer.
          :param inferred: The dictionary of already inferred types.
      """