parameters: (explicit_dtype, state)
docstring: Infer the dtype of an RNN state.
  
    Args:
      explicit_dtype: explicitly declared dtype or None.
      state: RNN's hidden state. Must be a Tensor or a nested iterable containing
        Tensors.
  
    Returns:
      dtype: inferred dtype of hidden state.
  
    Raises:
      ValueError: if `state` has heterogeneous dtypes or is empty.
docstring_summary: Infer the dtype of an RNN state.
docstring_tokens: Infer the dtype of an RNN state .
function: def _infer_state_dtype(explicit_dtype, state):
    """Infer the dtype of an RNN state.
  
    Args:
      explicit_dtype: explicitly declared dtype or None.
      state: RNN's hidden state. Must be a Tensor or a nested iterable containing
        Tensors.
  
    Returns:
      dtype: inferred dtype of hidden state.
  
    Raises:
      ValueError: if `state` has heterogeneous dtypes or is empty.
    """
    if explicit_dtype is not None:
      return explicit_dtype
    elif nest.is_sequence(state):
      inferred_dtypes = [element.dtype for element in nest.flatten(state)]
      if not inferred_dtypes:
        raise ValueError("Unable to infer dtype from empty state.")
      all_same = all([x == inferred_dtypes[0] for x in inferred_dtypes])
      if not all_same:
        raise ValueError(
            "State has tensors of different inferred_dtypes. Unable to infer a "
            "single representative dtype.")
      return inferred_dtypes[0]
    else:
      return state.dtype
function_tokens: def _infer_state_dtype ( explicit_dtype , state ) : if explicit_dtype is not None : return explicit_dtype elif nest . is_sequence ( state ) : inferred_dtypes = [ element . dtype for element in nest . flatten ( state ) ] if not inferred_dtypes : raise ValueError ( "Unable to infer dtype from empty state." ) all_same = all ( [ x == inferred_dtypes [ 0 ] for x in inferred_dtypes ] ) if not all_same : raise ValueError ( "State has tensors of different inferred_dtypes. Unable to infer a " "single representative dtype." ) return inferred_dtypes [ 0 ] else : return state . dtype