o
0i~ @ s d dl Z d dlZg dZdd Zdd Zdd Zd d
Zdd Zd
d Zdd Z dd Z
dd Zdd Zdd Z
dd Zdd ZejG dd dZdS ) N)commonprefixexistsgetatimegetctimegetmtimegetsizeisdirisfilesamefilesameopenfilesamestat
ALLOW_MISSINGc C s, zt | W dS ttfy Y dS w )NFT)osstatOSError
ValueError)path r 2/opt/alt/python310/lib64/python3.10/genericpath.pyr s r c C 6 zt | }W n ttfy Y dS w t|jS NF)r r r r S_ISREGst_mode)r str r r r r c C r r )r r r r S_ISDIRr )sr r r r r ' r r c C t | jS N)r r st_sizefilenamer r r r 0 r c C r r )r r st_mtimer r r r r 5 r" r c C r r )r r st_atimer r r r r : r" r c C r r )r r st_ctimer r r r r ? r" r c C sn | sdS t | d ttfstttj| } t| }t| }t|D ]\}}||| kr4|d | S q"|S )N r )
isinstancelisttuplemapr fspathminmax enumerate)ms1s2icr r r r E s r c C s | j |j ko| j|jkS r )st_inost_dev)r0 r1 r r r r W s
r c C t | }t |}t||S r )r r r )f1f2r0 r1 r r r r
^ s
r
c C r6 r )r fstatr )fp1fp2r0 r1 r r r r k s
r c C s | |}|r| |}t||}| |}||krA|d }||k rA| ||d |kr9| d | | |d fS |d7 }||k s#| | d d fS )N r )rfindr- )psepaltsepextsepsepIndexaltsepIndexdotIndex
filenameIndexr r r _splitexty s
rF c G sb d }}|D ]}t |trd}qt |trd}qt| d|jjd |r-|r/tdd d S d S )NFTz;() argument must be str, bytes, or os.PathLike object, not z.Can't mix strings and bytes in path components)r' strbytes TypeError __class____name__)funcnameargshasstrhasbytesr r r r _check_arg_types s
rP c @ s e Zd Z dd 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 )rJ rK rQ r r r
__reduce__ s zALLOW_MISSING.__reduce__N)rK
__module____qualname__rS rT r r r r r
s r
)r r __all__r r r r r r r r r r
r rF rP object__new__r
r r r r