
    BVh	                     \    d 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)	z4The implementation of `tf.data.Dataset.concatenate`.    )dataset_ops)gen_dataset_ops)nestc                     t        | ||      S N)_ConcatenateDataset)input_datasetdataset_to_concatenatenames      Y/home/dcms/DCMS/lib/python3.12/site-packages/tensorflow/python/data/ops/concatenate_op.py_concatenater      s    	],BD	II    c                   :     e Zd ZdZd fd	Zd Zed        Z xZS )r   z;A `Dataset` that concatenates its input with given dataset.c                    || _         || _        d }	 t        j                  ||j                  |j                        | _        ||g| _        || _	        t        j                  |j                  |j                  fi | j                  }t        | =  |       y# t        t        f$ r+}t        d|j                   d|j                         |d}~ww xY w)z(See `Dataset.concatenate()` for details.c                 R    | j                  |g      }|t        d|  d| d      |S )NzNo common supertype of z and .)most_specific_common_supertype	TypeError)abresults      r   common_supertypez6_ConcatenateDataset.__init__.<locals>.common_supertype"   s9    //4f	1!E!A>??mr   z!Incompatible dataset elements:
  z vs.   N)_input_dataset_dataset_to_concatenatetf_nestmap_structureelement_spec
_structurer   
ValueError_input_datasets_namer   concatenate_dataset_variant_tensor_common_argssuper__init__)selfr	   r
   r   r   evariant_tensor	__class__s          r   r&   z_ConcatenateDataset.__init__   s    'D#9D I--
M66
 
-
-/do *+ABDDJ$88%%'='M'M


N 
G^$ z" I (556 71>>?A BGHIIs   0B C(&CCc                     | j                   S r   )r    r'   s    r   _inputsz_ConcatenateDataset._inputs:   s    r   c                     | j                   S r   )r   r,   s    r   r   z _ConcatenateDataset.element_spec=   s    ??r   r   )	__name__
__module____qualname____doc__r&   r-   propertyr   __classcell__)r*   s   @r   r   r      s$    C%:   r   r   N)r2   tensorflow.python.data.opsr   tensorflow.python.opsr   tensorflow.python.utilr   r   r   	DatasetV2r    r   r   <module>r:      s+    ; 2 1 2J%+// %r   