U
    f/e[                     @  sR   d dl mZ d dlZd dlmZ d dlZd dlZd dlm	Z	 G dd dej
ZdS )    )annotationsN)Callable)Scalarc                	   @  s  e Zd ZdZdd ZejdtddZejdud	d
ZejdvddZ	ejdwddZ
ejdxddZejdyd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dzd%d&Zejd{d'd(Zejd|d)d*Zejd}d+d,Zejd-d. Zejd~d/d0Zejdd1d2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ddmdnZ5ejddodpZ6ejdddddqdrdsZ7d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-tiezk1ph/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_startswith.   s    z&BaseStringArrayMethods._str_startswithc                 C  s   d S r   r   r   r   r   r   _str_endswith2   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_replace6   s    
z#BaseStringArrayMethods._str_replacec                 C  s   d S r   r   )r   Zrepeatsr   r   r   _str_repeatB   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_matchF   s    z!BaseStringArrayMethods._str_matchc                 C  s   d S r   r   r*   r   r   r   _str_fullmatchL   s    z%BaseStringArrayMethods._str_fullmatchstrictc                 C  s   d S r   r   )r   encodingerrorsr   r   r   _str_encodeV   s    z"BaseStringArrayMethods._str_encodec                 C  s   d S r   r   r   subr   endr   r   r   	_str_findZ   s    z BaseStringArrayMethods._str_findc                 C  s   d S r   r   r1   r   r   r   
_str_rfind^   s    z!BaseStringArrayMethods._str_rfindc                 C  s   d S r   r   r   r   r   r   _str_findallb   s    z#BaseStringArrayMethods._str_findallc                 C  s   d S r   r   )r   ir   r   r   r   f   s    zBaseStringArrayMethods._str_getc                 C  s   d S r   r   r1   r   r   r   
_str_indexj   s    z!BaseStringArrayMethods._str_indexc                 C  s   d S r   r   r1   r   r   r   _str_rindexn   s    z"BaseStringArrayMethods._str_rindexc                 C  s   d S r   r   r   sepr   r   r   	_str_joinr   s    z BaseStringArrayMethods._str_joinc                 C  s   d S r   r   r   r;   expandr   r   r   _str_partitionv   s    z%BaseStringArrayMethods._str_partitionc                 C  s   d S r   r   r=   r   r   r   _str_rpartitionz   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   rA   r   r   r   _str_isalnum   s    z#BaseStringArrayMethods._str_isalnumc                 C  s   d S r   r   rA   r   r   r   _str_isalpha   s    z#BaseStringArrayMethods._str_isalphac                 C  s   d S r   r   rA   r   r   r   _str_isdecimal   s    z%BaseStringArrayMethods._str_isdecimalc                 C  s   d S r   r   rA   r   r   r   _str_isdigit   s    z#BaseStringArrayMethods._str_isdigitc                 C  s   d S r   r   rA   r   r   r   _str_islower   s    z#BaseStringArrayMethods._str_islowerc                 C  s   d S r   r   rA   r   r   r   _str_isnumeric   s    z%BaseStringArrayMethods._str_isnumericc                 C  s   d S r   r   rA   r   r   r   _str_isspace   s    z#BaseStringArrayMethods._str_isspacec                 C  s   d S r   r   rA   r   r   r   _str_istitle   s    z#BaseStringArrayMethods._str_istitlec                 C  s   d S r   r   rA   r   r   r   _str_isupper   s    z#BaseStringArrayMethods._str_isupperc                 C  s   d S r   r   rA   r   r   r   _str_capitalize   s    z&BaseStringArrayMethods._str_capitalizec                 C  s   d S r   r   rA   r   r   r   _str_casefold   s    z$BaseStringArrayMethods._str_casefoldc                 C  s   d S r   r   rA   r   r   r   
_str_title   s    z!BaseStringArrayMethods._str_titlec                 C  s   d S r   r   rA   r   r   r   _str_swapcase   s    z$BaseStringArrayMethods._str_swapcasec                 C  s   d S r   r   rA   r   r   r   
_str_lower   s    z!BaseStringArrayMethods._str_lowerc                 C  s   d S r   r   rA   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_rstripFc                 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)rH   )N)N)N)Nr"   F)Nr"   )r   T)8__name__
__module____qualname____doc__r   abcabstractmethodr   r   r   r    r!   r'   r(   npnanr+   r,   r0   r4   r5   r6   r   r8   r9   r<   r?   r@   rB   r   rC   rE   rG   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rZ   r\   r]   r^   r_   r`   ra   r   r   r   r   r      s       
  	






















r   )
__future__r   rf   collections.abcr   reZnumpyrh   Zpandas._typingr   ABCr   r   r   r   r   <module>   s   