
    Mh                        S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	  S SK
Jr  \(       a  S SKJr  S SKJrJrJrJr   " S	 S
\S   5      rg)    )annotations)TYPE_CHECKING)import_optional_dependency)doc)_shared_docs)BaseExcelReaderWorkbook)FilePath
ReadBufferScalarStorageOptionsc                     ^  \ rS rSr\" \S   S9  S       SU 4S jjj5       r\SS j5       r    SS jr	\SS j5       r
SS jrSS	 jrSS
 jr S   SS jjrSrU =r$ )PyxlsbReader   storage_options)r   c                :   > [        S5        [        TU ]	  UUUS9  g)z
Reader using pyxlsb engine.

Parameters
----------
filepath_or_buffer : str, path object, or Workbook
    Object to be parsed.
{storage_options}
engine_kwargs : dict, optional
    Arbitrary keyword arguments passed to excel engine.
pyxlsb)r   engine_kwargsN)r   super__init__)selffilepath_or_bufferr   r   	__class__s       I/var/www/html/env/lib/python3.13/site-packages/pandas/io/excel/_pyxlsb.pyr   PyxlsbReader.__init__   s*    $ 	#8, 	+' 	 	
    c                    SSK Jn  U$ )Nr   r	   )r   r
   )r   r
   s     r   _workbook_classPyxlsbReader._workbook_class4   s
    #r   c                     SSK Jn  U" U40 UD6$ )Nr   )open_workbook)r   r"   )r   r   r   r"   s       r   load_workbookPyxlsbReader.load_workbook:   s     	) /A=AAr   c                .    U R                   R                  $ N)booksheets)r   s    r   sheet_namesPyxlsbReader.sheet_namesE   s    yyr   c                Z    U R                  U5        U R                  R                  U5      $ r&   )raise_if_bad_sheet_by_namer'   	get_sheet)r   names     r   get_sheet_by_namePyxlsbReader.get_sheet_by_nameI   s%    ''-yy""4((r   c                `    U R                  U5        U R                  R                  US-   5      $ )N   )raise_if_bad_sheet_by_indexr'   r-   )r   indexs     r   get_sheet_by_indexPyxlsbReader.get_sheet_by_indexM   s+    ((/ yy""519--r   c                    UR                   c  g[        UR                   [        5      (       a;  [        UR                   5      nX!R                   :X  a  U$ [        UR                   5      $ UR                   $ )N )v
isinstancefloatint)r   cellvals      r   _convert_cellPyxlsbReader._convert_cellS   sS     66>dffe$$dff+Cff}
TVV}$vvr   c                N   / nSnUR                  SS9 H  nUS   R                  nU Vs/ s H  opR                  U5      PM     nnU(       a+  US   S:X  a"  UR                  5         U(       a  US   S:X  a  M"  U(       a-  UR	                  / /Xd-
  S-
  -  5        UR                  U5        UnUc  M  [        U5      U:  d  M    O   U(       aN  [        S U 5       5      n	[        S U 5       5      U	:  a&  S/n
U Vs/ s H  nX[        U5      -
  U
-  -   PM     nnU$ s  snf s  snf )	NT)sparser   r8   r2   c              3  8   #    U  H  n[        U5      v   M     g 7fr&   len.0data_rows     r   	<genexpr>.PyxlsbReader.get_sheet_data.<locals>.<genexpr>x   s     ?$hCMM$   c              3  8   #    U  H  n[        U5      v   M     g 7fr&   rE   rG   s     r   rJ   rK   y   s     6X3x==rL   )	rowsrr?   popextendappendrF   maxmin)r   sheetfile_rows_neededdataprevious_row_numberrow
row_numberr=   converted_row	max_width
empty_cellrI   s               r   get_sheet_dataPyxlsbReader.get_sheet_dataa   s7   
 $&  ::T:*CQJBEF#$//5#MFM"$5$;!!#  M"$5$; RDJ$Dq$HIJM*&0#+D	=M0M + ?$??I666B,.4
 %)$( CM 9ZGG$(   ' Gs   D<D" )NN)r   FilePath | ReadBuffer[bytes]r   zStorageOptions | Noner   zdict | NonereturnNone)rb   ztype[Workbook])r   ra   rb   r
   )rb   z	list[str])r.   str)r4   r<   )rb   r   r&   )rV   z
int | Nonerb   zlist[list[Scalar]])__name__
__module____qualname____firstlineno__r   r   r   propertyr   r#   r)   r/   r5   r?   r^   __static_attributes____classcell__)r   s   @r   r   r      s    &789 26%)	
8
 /
 #	

 

 :
4  
	B">	B		B    )." (, % 
	 r   r   r
   N)
__future__r   typingr   pandas.compat._optionalr   pandas.util._decoratorsr   pandas.core.shared_docsr   pandas.io.excel._baser   r   r
   pandas._typingr   r   r   r   r   r`   r   r   <module>rs      s:    "   > ' 0 1 g?:. gr   