o
    i eQ                     @   sR   d Z ddlmZ ddlmZ ddlmZ ddlmZ dd ZG dd	 d	ej	Z
d
S )z.The implementation of `tf.data.Dataset.shard`.    )dataset_ops)dtypes)ops)gen_dataset_opsc                 C   s   t | |||S )"See `Dataset.shard()` for details.)_ShardDataset)input_dataset
num_shardsindexname r   R/var/www/myenv/lib/python3.10/site-packages/tensorflow/python/data/ops/shard_op.py_shard   s   r   c                       s    e Zd ZdZ fddZ  ZS )r   z#A `Dataset` for sharding its input.c                    sf   || _ tj|tjdd| _tj|tjdd| _|| _tj	|j
f| j| jd| j}t || dS )r   r	   )dtyper   r
   )r	   r
   N)_input_datasetr   convert_to_tensorr   int64_num_shards_index_namer   shard_dataset_variant_tensor_common_argssuper__init__)selfr   r	   r
   r   variant_tensor	__class__r   r   r      s   z_ShardDataset.__init__)__name__
__module____qualname____doc__r   __classcell__r   r   r   r   r      s    r   N)r"   tensorflow.python.data.opsr   tensorflow.python.frameworkr   r   tensorflow.python.opsr   r   UnaryUnchangedStructureDatasetr   r   r   r   r   <module>   s   