a
    ӗao                     @   s   d dl Z d dlZg dZdd Zdd Zdd Zd	d
 Zdd Zdd Zdd Z	dd Z
dd Zdd Zdd Zdd Zdd ZdS )    N)commonprefixexistsgetatimegetctimegetmtimegetsizeisdirisfilesamefilesameopenfilesamestatc              	   C   s,   zt |  W n ttfy&   Y dS 0 dS )NFT)osstatOSError
ValueError)path r   ./home/manager/Python-3.9.10/Lib/genericpath.pyr      s
    r   c              	   C   s4   zt | }W n ttfy&   Y dS 0 t|jS NF)r   r   r   r   S_ISREGst_mode)r   str   r   r   r	      s
    r	   c              	   C   s4   zt | }W n ttfy&   Y dS 0 t|jS r   )r   r   r   r   S_ISDIRr   )sr   r   r   r   r   '   s
    r   c                 C   s   t | jS N)r   r   st_sizefilenamer   r   r   r   0   s    r   c                 C   s   t | jS r   )r   r   st_mtimer   r   r   r   r   5   s    r   c                 C   s   t | jS r   )r   r   st_atimer   r   r   r   r   :   s    r   c                 C   s   t | jS r   )r   r   st_ctimer   r   r   r   r   ?   s    r   c                 C   sl   | sdS t | d ttfs*tttj| } t| }t| }t|D ]$\}}||| krB|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 ko| j|jkS 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   )Zf1Zf2r+   r,   r   r   r   r
   ^   s    

r
   c                 C   s   t | }t |}t||S r   )r   fstatr   )Zfp1Zfp2r+   r,   r   r   r   r   k   s    

r   c                 C   s   |  |}|r"|  |}t||}|  |}||krz|d }||k rz| ||d  |krp| d | | |d  fS |d7 }q<| | d d fS )N   r   )rfindr(   )psepaltsepextsepZsepIndexZaltsepIndexZdotIndexZfilenameIndexr   r   r   	_splitexty   s    




r8   c                 G   s`   d }}|D ]<}t |tr d}qt |tr0d}qt|  d|jjd q|r\|r\td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argsZhasstrZhasbytesr   r   r   r   _check_arg_types   s    

r@   )r   r   __all__r   r	   r   r   r   r   r   r   r   r
   r   r8   r@   r   r   r   r   <module>   s   	