parameters: (feature_columns)
docstring: Checks the validity of the set of FeatureColumns.
  
    Args:
      feature_columns: An iterable of instances or subclasses of FeatureColumn.
  
    Raises:
      ValueError: If `feature_columns` is a dict.
      ValueError: If there are duplicate feature column keys.
docstring_summary: Checks the validity of the set of FeatureColumns.
docstring_tokens: Checks the validity of the set of FeatureColumns .
function: def check_feature_columns(feature_columns):
    """Checks the validity of the set of FeatureColumns.
  
    Args:
      feature_columns: An iterable of instances or subclasses of FeatureColumn.
  
    Raises:
      ValueError: If `feature_columns` is a dict.
      ValueError: If there are duplicate feature column keys.
    """
    if isinstance(feature_columns, dict):
      raise ValueError('Expected feature_columns to be iterable, found dict.')
    seen_keys = set()
    for f in feature_columns:
      key = f.key
      if key in seen_keys:
        raise ValueError('Duplicate feature column key found for column: {}. '
                         'This usually means that the column is almost identical '
                         'to another column, and one must be discarded.'.format(
                             f.name))
      seen_keys.add(key)
function_tokens: def check_feature_columns ( feature_columns ) : if isinstance ( feature_columns , dict ) : raise ValueError ( 'Expected feature_columns to be iterable, found dict.' ) seen_keys = set ( ) for f in feature_columns : key = f . key if key in seen_keys : raise ValueError ( 'Duplicate feature column key found for column: {}. ' 'This usually means that the column is almost identical ' 'to another column, and one must be discarded.' . format ( f . name ) ) seen_keys . add ( key )