o
    i e                     @   s`   d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddd	Z	G d
d dej
ZdS )z1The implementation of `tf.data.Dataset.prefetch`.    )dataset_ops)
debug_mode)dtypes)ops)gen_dataset_opsNc                 C   s   t jr| S t| ||dS )%See `Dataset.prefetch()` for details.)name)r   
DEBUG_MODE_PrefetchDataset)input_datasetbuffer_sizer    r   U/var/www/myenv/lib/python3.10/site-packages/tensorflow/python/data/ops/prefetch_op.py	_prefetch   s   r   c                       s"   e Zd ZdZd fdd	Z  ZS )r
   z5A `Dataset` that asynchronously prefetches its input.Nc                    s   || _ |du r
tj}tj|tjdd| _|| _t	|j
 tj|j
f| j|d| j}W d   n1 s7w   Y  t || dS )r   Nr   )dtyper   )r   slack_period)_input_datasetr   AUTOTUNEr   convert_to_tensorr   int64_buffer_size_namecolocate_with_variant_tensorr   prefetch_dataset_common_argssuper__init__)selfr   r   r   r   variant_tensor	__class__r   r   r   "   s$   z_PrefetchDataset.__init__)NN)__name__
__module____qualname____doc__r   __classcell__r   r   r    r   r
      s    r
   )N)r%   tensorflow.python.data.opsr   r   tensorflow.python.frameworkr   r   tensorflow.python.opsr   r   UnaryUnchangedStructureDatasetr
   r   r   r   r   <module>   s   
