
    BVh1	                     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.zip`.    )dataset_ops)nest)gen_dataset_ops)datac                     t        | |      S N)_ZipDataset)datasetsnames     Q/home/dcms/DCMS/lib/python3.12/site-packages/tensorflow/python/data/ops/zip_op.py_zipr      s    	Xt	$$    c                   :     e Zd ZdZd fd	Zd Zed        Z xZS )r	   z*A `Dataset` that zips its inputs together.c                    t        j                  |      D ]O  }t        |t        j                        rt        |t
              rt        d      t        dt        |       d       || _        t        j                  | j                  t        j                  | j                        D cg c]  }|j                   c}      | _        || _        t        j                  t        j                  | j                        D cg c]  }|j                   c}fi | j                   }t"        | I  |       yc c}w c c}w )z See `Dataset.zip()` for details.zInvalid input to `zip`. Inputs are expected to be (nested) structures of `tf.data.Dataset` objects. Python `list` is not supported and you should use `tuple` instead.zInvalid input to `zip`. Inputs are expected to be (nested) structures of `tf.data.Dataset` objects but encountered object of type .N)r   flatten
isinstance
data_types	DatasetV2list	TypeErrortype	_datasetspack_sequence_aselement_spec
_structure_namer   zip_dataset_variant_tensor_common_argssuper__init__)selfr
   r   dsvariant_tensor	__class__s        r   r"   z_ZipDataset.__init__   s   ll8$ J001b$C  --1"XJa9  DN++4<<3OPRPDO DJ$00&*ll4>>&BC		C


N 
G^$ Q 	Ds   +D6
D;c                 @    t        j                  | j                        S r   )r   r   r   r#   s    r   _inputsz_ZipDataset._inputs9   s    <<''r   c                     | j                   S r   )r   r(   s    r   r   z_ZipDataset.element_spec<   s    ??r   r   )	__name__
__module____qualname____doc__r"   r)   propertyr   __classcell__)r&   s   @r   r	   r	      s$    2%6(  r   r	   N)r.   tensorflow.python.data.opsr   tensorflow.python.data.utilr   tensorflow.python.opsr   tensorflow.python.typesr   r   r   r   r	    r   r   <module>r6      s-    3 2 , 1 6%#+'' #r   