eaiovnaovbqoebvqoeavibavo B  f0 @sdZddlZddlZddddddd d d d d g ZddZdd Zdd ZddZddZddZ ddZ ddZ dd Z dd Z dd ZddZddZdS)z Path operations common to more than one OS Do not use directly. The OS specific modules import the appropriate functions from this module themselves. N commonprefixexistsgetatimegetctimegetmtimegetsizeisdirisfilesamefile sameopenfilesamestatcCs(yt|Wntk r"dSXdS)zDTest whether a path exists. Returns False for broken symbolic linksFT)osstatOSError)pathr0/opt/alt/python37/lib64/python3.7/genericpath.pyrs cCs0yt|}Wntk r"dSXt|jS)z%Test whether a path is a regular fileF)r rrS_ISREGst_mode)rstrrrr s cCs0yt|}Wntk r"dSXt|jS)zW||ddfS)zSplit the extension from a pathname. Extension is everything from the last dot to the end, ignoring leading dots. Returns "(root, ext)"; ext may be empty.Nr)rfindr$)psepaltsepextsepsepIndex altsepIndexdotIndex filenameIndexrrr _splitextys      r<cGsbd}}xB|D]:}t|tr"d}qt|tr2d}qtd||jjfdqW|r^|r^tdddS)NFTz*%s() argument must be str or bytes, not %rz.Can't mix strings and bytes in path components)rstrbytes TypeError __class____name__)funcnameargshasstrhasbytesrrrr_check_arg_typess   rF)__doc__r r__all__rr rrrrrrr r r r<rFrrrrs$