
    +gd/                     V    d dl mZmZ ddlmZ ddlmZ ddlmZ  G d de          Z	d	S )
    )CallableOptional   )Features)	Generator   )AbstractDatasetInputStreamc                   t     e Zd Z	 	 	 	 	 	 ddedee         dedededee         d	ee	         f fd
Z
d Z xZS )GeneratorDatasetInputStreamNF	generatorfeatures	cache_dirkeep_in_memory	streaming
gen_kwargsnum_procc           	      r     t                      j        d|||||d| t          d||||d|| _        d S )N)r   r   r   r   r   )r   r   r   r    )super__init__r   builder)
selfr   r   r   r   r   r   r   kwargs	__class__s
            5lib/python3.11/site-packages/datasets/io/generator.pyr   z$GeneratorDatasetInputStream.__init__	   sz     	 	
)	
 	
 	
 	
 	
 ! 
!	
 

 
 
    c                     | j         r| j                            d          }nNd }d }d }d }| j                            ||||| j                   | j                            d|| j                  }|S )Ntrain)split)download_configdownload_modeverification_mode	base_pathr   )r   r"   	in_memory)r   r   as_streaming_datasetdownload_and_preparer   
as_datasetr   )r   datasetr    r!   r"   r#   s         r   readz GeneratorDatasetInputStream.read$   s    > 	l77g7FFGG #O M $IL-- /+"3# .    l--1BdNa .  G r   )NNFFNN)__name__
__module____qualname__r   r   r   strbooldictintr   r)   __classcell__)r   s   @r   r   r      s         (,$%)"&
 

 8$
 	

 
 
 TN
 3-
 
 
 
 
 
6      r   r   N)
typingr   r    r   $packaged_modules.generator.generatorr   abcr	   r   r   r   r   <module>r6      s    % % % % % % % %       < < < < < < + + + + + +2 2 2 2 2"< 2 2 2 2 2r   