
    +gd                     f    d dl mZ ddlmZmZ ddlmZ ddlmZm	Z	 ddl
mZ  G d d	e          Zd
S )    )Optional   )Features
NamedSplit)Text)NestedDataStructureLikePathLike   )AbstractDatasetReaderc                        e Zd Z	 	 	 	 	 	 ddee         dee         dee         dede	de	d	ee
         f fd
Zd Z xZS )TextDatasetReaderNFpath_or_pathssplitfeatures	cache_dirkeep_in_memory	streamingnum_procc           
           t                      j        |f||||||d| t          |t                    r|n| j        |i}t          d|||d|| _        d S )N)r   r   r   r   r   r   )r   
data_filesr    )super__init__
isinstancedictr   r   builder)
selfr   r   r   r   r   r   r   kwargs	__class__s
            0lib/python3.11/site-packages/datasets/io/text.pyr   zTextDatasetReader.__init__
   s     			
)		
 		
 		
 		
 		
 *4M4)H)Hitz[hNi 
$
 
 	
 
    c                     | j         r!| j                            | j                  }nSd }d }d }d }| j                            ||||| j                   | j                            | j        || j                  }|S )N)r   )download_configdownload_modeverification_mode	base_pathr   )r   r%   	in_memory)r   r   as_streaming_datasetr   download_and_preparer   
as_datasetr   )r   datasetr#   r$   r%   r&   s         r    readzTextDatasetReader.read'   s    > 	l77dj7IIGG #O M $IL-- /+"3# .    l--j4EQUQd .  G r!   )NNNFFN)__name__
__module____qualname__r   r	   r   r   r   strboolintr   r,   __classcell__)r   s   @r    r   r   	   s         '+'+$"&
 
.x8
 
#
 8$	

 
 
 
 3-
 
 
 
 
 
:      r!   r   N)typingr    r   r   packaged_modules.text.textr   utils.typingr   r	   abcr   r   r   r!   r    <module>r9      s          # # # # # # # # - - - - - - < < < < < < < < & & & & & &4 4 4 4 4- 4 4 4 4 4r!   