B
    \ c                 @   sF  d Z dZdZdZdZdZdZdZdZd	Z	d
Z
dd Zdd ZdZdZdZdZdZdZdZdZdZ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*Z!d+Z"e"Z#d,Z$d-Z%d.Z&d/Z'd0Z(d-Z)d.Z*d/Z+d1Z,d2Z-d3Z.d	Z/dZ0dZ1dZ2dZ3dZ4dZ5dZ6d	Z7d3Z8d2Z9dZ:d4Z;d5Z<d6Z=d7Z>d8Z?ed9fed:fed;fed<fed=fed>ffe)d?ffe*d@ffe+e!B dAfe!dBfe+dCffe-d?ffe.d@ffe/e"B dAfe"dBfe/dCffe1d?ffe2d@ffe3e$B dDfe$dEfe3dCfff
Z@dFdG ZAd2ZBd*ZCd/ZDd3ZEdZFdZGdZHd.ZIdZJd5ZKdZLdZMd+ZNd,ZOdZPd-ZQd4ZRyddHlST W n eTk
r@   Y nX dIS )JzoConstants/functions for interpreting results of os.stat() and os.lstat().

Suggested usage: from stat import *
                            	   c             C   s   | d@ S )zMReturn the portion of the file's mode that can be set by
    os.chmod().
    i   )moder   r   lib/python3.7/stat.pyS_IMODE   s    r   c             C   s   | d@ S )zLReturn the portion of the file's mode that describes the
    file type.
    i   r   )r   r   r   r   S_IFMT   s    r   i @  i    i `  i   i   i   i   c             C   s   t | tkS )z(Return True if mode is from a directory.)r   S_IFDIR)r   r   r   r   S_ISDIR2   s    r   c             C   s   t | tkS )z<Return True if mode is from a character special device file.)r   S_IFCHR)r   r   r   r   S_ISCHR6   s    r   c             C   s   t | tkS )z8Return True if mode is from a block special device file.)r   S_IFBLK)r   r   r   r   S_ISBLK:   s    r   c             C   s   t | tkS )z+Return True if mode is from a regular file.)r   S_IFREG)r   r   r   r   S_ISREG>   s    r   c             C   s   t | tkS )z0Return True if mode is from a FIFO (named pipe).)r   S_IFIFO)r   r   r   r   S_ISFIFOB   s    r   c             C   s   t | tkS )z,Return True if mode is from a symbolic link.)r   S_IFLNK)r   r   r   r   S_ISLNKF   s    r   c             C   s   t | tkS )z%Return True if mode is from a socket.)r   S_IFSOCK)r   r   r   r   S_ISSOCKJ   s    r   c             C   s   dS )z#Return True if mode is from a door.Fr   )r   r   r   r   S_ISDOORN   s    r   c             C   s   dS )z*Return True if mode is from an event port.Fr   )r   r   r   r   S_ISPORTR   s    r   c             C   s   dS )z'Return True if mode is from a whiteout.Fr   )r   r   r   r   S_ISWHTV   s    r    i   i   i         @   i  8          i   i   i   i   i    l-bdcprwsSxtTc             C   sP   g }x@t D ]8}x2|D ] \}}| |@ |kr|| P qW |d q
W d|S )z;Convert a file's mode to a string of the form '-rwxrwxrwx'.r(    )_filemode_tableappendjoin)r   Zpermtablebitcharr   r   r   filemode   s    

r;   )*N)U__doc__ST_MODEST_INOST_DEVST_NLINKST_UIDST_GIDST_SIZEST_ATIMEST_MTIMEST_CTIMEr   r   r   r   r   r   r   r   r   S_IFDOORS_IFPORTS_IFWHTr   r   r   r   r   r   r   r   r   r    S_ISUIDS_ISGIDS_ENFMTS_ISVTXS_IREADS_IWRITES_IEXECS_IRWXUS_IRUSRS_IWUSRS_IXUSRS_IRWXGS_IRGRPS_IWGRPS_IXGRPS_IRWXOS_IROTHS_IWOTHS_IXOTH	UF_NODUMPUF_IMMUTABLE	UF_APPEND	UF_OPAQUEUF_NOUNLINKUF_COMPRESSED	UF_HIDDENSF_ARCHIVEDSF_IMMUTABLE	SF_APPENDSF_NOUNLINKSF_SNAPSHOTr5   r;   FILE_ATTRIBUTE_ARCHIVEFILE_ATTRIBUTE_COMPRESSEDFILE_ATTRIBUTE_DEVICEFILE_ATTRIBUTE_DIRECTORYFILE_ATTRIBUTE_ENCRYPTEDFILE_ATTRIBUTE_HIDDENFILE_ATTRIBUTE_INTEGRITY_STREAMFILE_ATTRIBUTE_NORMAL"FILE_ATTRIBUTE_NOT_CONTENT_INDEXEDFILE_ATTRIBUTE_NO_SCRUB_DATAFILE_ATTRIBUTE_OFFLINEFILE_ATTRIBUTE_READONLYFILE_ATTRIBUTE_REPARSE_POINTFILE_ATTRIBUTE_SPARSE_FILEFILE_ATTRIBUTE_SYSTEMFILE_ATTRIBUTE_TEMPORARYFILE_ATTRIBUTE_VIRTUAL_statImportErrorr   r   r   r   <module>   s   	


