U
    Mfi                     @  sn   d dl mZ d dlZd dlmZ d dlZd dlmZ d dlZ	d dl
mZ erXd dlmZ G dd dejZdS )	    )annotationsN)Callable)TYPE_CHECKING)Scalar)Seriesc                	   @  sF  e Zd ZdZdd Zejd{ddZejd|d	d
Zejd}ddZ	ejd~ddZ
ejdddZejddddddddddZejdd Zejddejfdddddd d!Zejddejfdddddd"d#Zejdd%d&Zejdd'd(Zejdd)d*Zejdd+d,Zejd-d. Zejdd/d0Zejdd1d2Zejd3d4 Zejd5d6 Zejd7d8 Zejd9d: Zejdd;d<Zejdd=d>Zejd?d@ ZejdAdB Z ejddDdEZ!ejdFdG Z"ejdHdI Z#ejdJdK Z$ejdLdM Z%ejdNdO Z&ejdPdQ Z'ejdRdS Z(ejdTdU Z)ejdVdW Z*ejdXdY Z+ejdZd[ Z,ejd\d] Z-ejd^d_ Z.ejd`da Z/ejdbdc Z0ejddde Z1ejddfdgZ2ejddhdiZ3ejddjdkZ4ejddldmdndoZ5ejddldpdqdrZ6ejddtduZ7ejddvdwZ8ejdddddxdydzZ9dS )BaseStringArrayMethodsa  
    Base class for extension arrays implementing string methods.

    This is where our ExtensionArrays can override the implementation of
    Series.str.<method>. We don't expect this to work with
    3rd-party extension arrays.

    * User calls Series.str.<method>
    * pandas extracts the extension array from the Series
    * pandas calls ``extension_array._str_<method>(*args, **kwargs)``
    * pandas wraps the result, to return to the user.

    See :ref:`Series.str` for the docstring of each method.
    c                 C  s.   t |tr | j|j|j|jdS | |S d S )N)startstopstep)
isinstanceslice
_str_slicer   r	   r
   _str_get)selfkey r   </tmp/pip-unpacked-wheel-eb6vo0j3/pandas/core/strings/base.py_str_getitem    s    
z#BaseStringArrayMethods._str_getitemr   c                 C  s   d S Nr   r   patflagsr   r   r   
_str_count&   s    z!BaseStringArrayMethods._str_countleft c                 C  s   d S r   r   )r   widthZsideZfillcharr   r   r   _str_pad*   s    zBaseStringArrayMethods._str_padTNc                 C  s   d S r   r   )r   r   caser   naregexr   r   r   _str_contains.   s    z$BaseStringArrayMethods._str_containsc                 C  s   d S r   r   r   r   r   r   r   r   _str_startswith2   s    z&BaseStringArrayMethods._str_startswithc                 C  s   d S r   r   r!   r   r   r   _str_endswith6   s    z$BaseStringArrayMethods._str_endswithzstr | re.Patternzstr | Callableintbool)r   replnr   r   r   c                 C  s   d S r   r   )r   r   r'   r(   r   r   r   r   r   r   _str_replace:   s    
z#BaseStringArrayMethods._str_replacec                 C  s   d S r   r   )r   Zrepeatsr   r   r   _str_repeatF   s    z"BaseStringArrayMethods._str_repeatstrr   )r   r   r   r   c                 C  s   d S r   r   r   r   r   r   r   r   r   r   
_str_matchJ   s    z!BaseStringArrayMethods._str_matchc                 C  s   d S r   r   r,   r   r   r   _str_fullmatchP   s    z%BaseStringArrayMethods._str_fullmatchstrictc                 C  s   d S r   r   )r   encodingerrorsr   r   r   _str_encodeZ   s    z"BaseStringArrayMethods._str_encodec                 C  s   d S r   r   r   subr   endr   r   r   	_str_find^   s    z BaseStringArrayMethods._str_findc                 C  s   d S r   r   r3   r   r   r   
_str_rfindb   s    z!BaseStringArrayMethods._str_rfindc                 C  s   d S r   r   r   r   r   r   _str_findallf   s    z#BaseStringArrayMethods._str_findallc                 C  s   d S r   r   )r   ir   r   r   r   j   s    zBaseStringArrayMethods._str_getc                 C  s   d S r   r   r3   r   r   r   
_str_indexn   s    z!BaseStringArrayMethods._str_indexc                 C  s   d S r   r   r3   r   r   r   _str_rindexr   s    z"BaseStringArrayMethods._str_rindexc                 C  s   d S r   r   r   sepr   r   r   	_str_joinv   s    z BaseStringArrayMethods._str_joinc                 C  s   d S r   r   r   r=   expandr   r   r   _str_partitionz   s    z%BaseStringArrayMethods._str_partitionc                 C  s   d S r   r   r?   r   r   r   _str_rpartition~   s    z&BaseStringArrayMethods._str_rpartitionc                 C  s   d S r   r   r   r   r   r   _str_len   s    zBaseStringArrayMethods._str_lenc                 C  s   d S r   r   )r   r   r	   r
   r   r   r   r      s    z!BaseStringArrayMethods._str_slicec                 C  s   d S r   r   )r   r   r	   r'   r   r   r   _str_slice_replace   s    z)BaseStringArrayMethods._str_slice_replacec                 C  s   d S r   r   )r   tabler   r   r   _str_translate   s    z%BaseStringArrayMethods._str_translatec                 K  s   d S r   r   )r   r   kwargsr   r   r   	_str_wrap   s    z BaseStringArrayMethods._str_wrap|c                 C  s   d S r   r   r<   r   r   r   _str_get_dummies   s    z'BaseStringArrayMethods._str_get_dummiesc                 C  s   d S r   r   rC   r   r   r   _str_isalnum   s    z#BaseStringArrayMethods._str_isalnumc                 C  s   d S r   r   rC   r   r   r   _str_isalpha   s    z#BaseStringArrayMethods._str_isalphac                 C  s   d S r   r   rC   r   r   r   _str_isdecimal   s    z%BaseStringArrayMethods._str_isdecimalc                 C  s   d S r   r   rC   r   r   r   _str_isdigit   s    z#BaseStringArrayMethods._str_isdigitc                 C  s   d S r   r   rC   r   r   r   _str_islower   s    z#BaseStringArrayMethods._str_islowerc                 C  s   d S r   r   rC   r   r   r   _str_isnumeric   s    z%BaseStringArrayMethods._str_isnumericc                 C  s   d S r   r   rC   r   r   r   _str_isspace   s    z#BaseStringArrayMethods._str_isspacec                 C  s   d S r   r   rC   r   r   r   _str_istitle   s    z#BaseStringArrayMethods._str_istitlec                 C  s   d S r   r   rC   r   r   r   _str_isupper   s    z#BaseStringArrayMethods._str_isupperc                 C  s   d S r   r   rC   r   r   r   _str_capitalize   s    z&BaseStringArrayMethods._str_capitalizec                 C  s   d S r   r   rC   r   r   r   _str_casefold   s    z$BaseStringArrayMethods._str_casefoldc                 C  s   d S r   r   rC   r   r   r   
_str_title   s    z!BaseStringArrayMethods._str_titlec                 C  s   d S r   r   rC   r   r   r   _str_swapcase   s    z$BaseStringArrayMethods._str_swapcasec                 C  s   d S r   r   rC   r   r   r   
_str_lower   s    z!BaseStringArrayMethods._str_lowerc                 C  s   d S r   r   rC   r   r   r   
_str_upper   s    z!BaseStringArrayMethods._str_upperc                 C  s   d S r   r   )r   formr   r   r   _str_normalize   s    z%BaseStringArrayMethods._str_normalizec                 C  s   d S r   r   r   Zto_stripr   r   r   
_str_strip   s    z!BaseStringArrayMethods._str_stripc                 C  s   d S r   r   r]   r   r   r   _str_lstrip   s    z"BaseStringArrayMethods._str_lstripc                 C  s   d S r   r   r]   r   r   r   _str_rstrip   s    z"BaseStringArrayMethods._str_rstripr   )prefixreturnc                 C  s   d S r   r   )r   ra   r   r   r   _str_removeprefix   s    z(BaseStringArrayMethods._str_removeprefix)suffixrb   c                 C  s   d S r   r   )r   rd   r   r   r   _str_removesuffix   s    z(BaseStringArrayMethods._str_removesuffixFc                 C  s   d S r   r   )r   r   r(   r@   r   r   r   
_str_split   s    z!BaseStringArrayMethods._str_splitc                 C  s   d S r   r   )r   r   r(   r   r   r   _str_rsplit   s    z"BaseStringArrayMethods._str_rsplit)r   r   r@   c                 C  s   d S r   r   )r   r   r   r@   r   r   r   _str_extract   s    z#BaseStringArrayMethods._str_extract)r   )r   r   )Tr   NT)N)N)r$   Tr   T)r/   )r   N)r   N)r   )r   N)r   N)NNN)NNN)rJ   )N)N)N)Nr$   F)Nr$   )r   T):__name__
__module____qualname____doc__r   abcabstractmethodr   r   r    r"   r#   r)   r*   npnanr-   r.   r2   r6   r7   r8   r   r:   r;   r>   rA   rB   rD   r   rE   rG   rI   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r\   r^   r_   r`   rc   re   rf   rg   rh   r   r   r   r   r      s       
  	






















r   )
__future__r   rm   collections.abcr   retypingr   Znumpyro   Zpandas._typingr   Zpandasr   ABCr   r   r   r   r   <module>   s   