
    i                     Z    S r SSKJr  SSKJrJrJrJr  SSKJ	r	  SSK
Jr   " S S\	5      rg)	z6
Paged CSV reader.

A parser for tabular data files.

    )Path)AnyDictListOptional)
BaseReader)Documentc                   |   ^  \ rS rSrSrSS.S\S\S\SS	4U 4S
 jjjr   SS\S\	\
   S\S\S\\   4
S jjrSrU =r$ )PagedCSVReader   z
Paged CSV parser.

Displayed each row in an LLM-friendly format on a separate document.

Args:
    encoding (str): Encoding used to open the file.
        utf-8 by default.

zutf-8encodingargsr   kwargsreturnNc                2   > [         TU ]  " U0 UD6  Xl        g)zInit params.N)super__init__	_encoding)selfr   r   r   	__class__s       a/home/james-whalen/.local/lib/python3.13/site-packages/llama_index/readers/file/paged_csv/base.pyr   PagedCSVReader.__init__   s    $)&)!    file
extra_info	delimiter	quotecharc                 ,   SSK n/ n[        XR                  S9 nUR                  XsUS9nU HI  n	UR	                  [        SR                  S U	R                  5        5       5      U=(       d    0 S95        MK     SSS5        U$ ! , (       d  f       U$ = f)zParse file.r   Nr   )fr   r   
c              3   l   #    U  H*  u  pUR                  5        S UR                  5        3v   M,     g7f)z: N)strip).0kvs      r   	<genexpr>+PagedCSVReader.load_data.<locals>.<genexpr>0   s,      'DODAqwwykAGGI;7Ks   24)textr   )csvopenr   
DictReaderappendr	   joinitems)
r   r   r   r   r   r*   docsfp
csv_readerrows
             r   	load_dataPagedCSVReader.load_data    s     	$0B"YWJ!!YY 'DGIIK'  $.#3	 " 1  10 s   A B
B)r   )N,")__name__
__module____qualname____firstlineno____doc__r   strr   r   r   r   r   r	   r4   __static_attributes____classcell__)r   s   @r   r   r      s    	 4; "c "S "c "d " " &* TN 	
  
h r   r   N)r<   pathlibr   typingr   r   r   r   llama_index.core.readers.baser   llama_index.core.schemar	   r    r   r   <module>rE      s'     , , 4 ,'Z 'r   