
    BVh{                     h    d Z ddlmZ ddlmZ ddlmZ ddlmZ d Z	 G d dej                        Zy	)
z/The implementation of `tf.data.Dataset.unique`.    )dataset_ops)nest)dtypes)gen_experimental_dataset_opsc                     t        | |      S N)_UniqueDataset)input_datasetnames     T/home/dcms/DCMS/lib/python3.12/site-packages/tensorflow/python/data/ops/unique_op.py_uniquer      s    	t	,,    c                   $     e Zd ZdZd fd	Z xZS )r	   z=A dataset containing the unique elements of an input dataset.c                    || _         t        j                  t        j                  |            D ]B  }|t
        j                  t
        j                  t
        j                  fvs5t        d| d       || _
        t        j                  | j                   j                  fi | j                  }t        | A  ||       y)z)See `tf.data.Dataset.unique` for details.z/`tf.data.Dataset.unique` does not support type z? -- only `tf.int32`, `tf.int64`, and `tf.string` are supported.N)_input_datasetr   flattenr   get_legacy_output_typesr   int32int64string	TypeError_namer   unique_dataset_variant_tensor_common_argssuper__init__)selfr
   r   tyvariant_tensor	__class__s        r   r   z_UniqueDataset.__init__   s    'Dll;>>}MN G	FLL&,,>	>=bT BE FG 	GG
 DJ1@@++


N 
G]N3r   r   )__name__
__module____qualname____doc__r   __classcell__)r!   s   @r   r	   r	      s    E4 4r   r	   N)r%   tensorflow.python.data.opsr   tensorflow.python.data.utilr   tensorflow.python.frameworkr   tensorflow.python.opsr   r   UnaryUnchangedStructureDatasetr	    r   r   <module>r-      s-    6 2 , . >-4[?? 4r   