a
´i~ ã @ s˜ d dl Z d dlZg d¢Zdd„ Zdd„ Zdd„ Zd d
„ Zdd„ Zd
d„ Zdd„ Z dd„ Z
dd„ Zdd„ Zdd„ Z
dd„ Zdd„ ZejG dd„ dƒƒZdS )é N)ÚcommonprefixÚexistsÚgetatimeÚgetctimeÚgetmtimeÚgetsizeÚisdirÚisfileÚsamefileÚsameopenfileÚsamestatÚ
ALLOW_MISSINGc C s, zt | ¡ W n ttfy& Y dS 0 dS )NFT)ÚosÚstatÚOSErrorÚ
ValueError)Úpath© r ú#/usr/lib64/python3.9/genericpath.pyr s
r c C s4 zt | ¡}W n ttfy& Y dS 0 t |j¡S ©NF)r r r r ÚS_ISREGÚst_mode)r Ústr r r r s
r c C s4 zt | ¡}W n ttfy& Y dS 0 t |j¡S r )r r r r ÚS_ISDIRr )Úsr r r r r ' s
r c C s t | ¡jS ©N)r r Úst_size©Úfilenamer r r r 0 s r c C s t | ¡jS r )r r Úst_mtimer r r r r 5 s r c C s t | ¡jS r )r r Úst_atimer r r r r : s r c C s t | ¡jS r )r r Úst_ctimer r r r r ? s r c C sl | sdS t | d ttfƒs*tttj| ƒƒ} t| ƒ}t| ƒ}t|ƒD ]$\}}||| krB|d |… S qB|S )NÚ r ) Ú
isinstanceÚlistÚtupleÚmapr ÚfspathÚminÚmaxÚ enumerate)ÚmÚs1Ús2ÚiÚcr r r r E s r c C s | j |j ko| j|jkS r )Úst_inoÚst_dev)r, r- r r r r W s
ÿr c C s t | ¡}t |¡}t||ƒS r )r r r )Úf1Úf2r, r- r r r r
^ s
r
c C s t | ¡}t |¡}t||ƒS r )r Úfstatr )Úfp1Úfp2r, r- r r r r k s
r c C sŠ | |¡}|r"| |¡}t||ƒ}| |¡}||krz|d }||k rz| ||d … |krp| d |… | |d … fS |d7 }q<| | d d… fS )Né r )Úrfindr) )ÚpÚsepÚaltsepÚextsepÚsepIndexÚaltsepIndexÚdotIndexÚ
filenameIndexr r r Ú _splitexty s
rA c G s` d }}|D ]<}t |tƒr d}qt |tƒr0d}qt| › d|jj›�ƒd ‚q|r\|r\tdƒd ‚d S )NFTz;() argument must be str, bytes, or os.PathLike object, not z.Can't mix strings and bytes in path components)r# ÚstrÚbytesÚ TypeErrorÚ __class__Ú__name__)ÚfuncnameÚargsÚhasstrÚhasbytesr r r r Ú_check_arg_types� s
ÿÿrK c @ s e Zd Zdd„ Zdd„ ZdS )r
c C s dS )Nzos.path.ALLOW_MISSINGr ©Úselfr r r Ú__repr__¡ s zALLOW_MISSING.__repr__c C s | j jS r )rE rF rL r r r Ú
__reduce__£ s zALLOW_MISSING.__reduce__N)rF Ú
__module__Ú__qualname__rN rO r r r r r
ž s r
)r r Ú__all__r r r r r r r r r r
r rA rK ÚobjectÚ__new__r
r r r r Ú