a ]db@sddlmZddlZddlZddlmZddlmZddlm Z ddl m Z ej dkrpddl Z Gd d d e ZnGd d d e Zd gZdS) ) annotationsN)ENOENT)cast) BaseFileLock)raise_on_exist_ro_filewin32c@s,eZdZdZddddZddddZdS) WindowsFileLockWUses the :func:`msvcrt.locking` function to hard lock the lock file on windows systems.Nonereturnc Cst|jtjtjBtjB}zt|j|}Wn0ty^}z|jt krJWYd}~nBd}~00zt |t j dWntyt |Yn0||_dSNr)r _lock_fileosO_RDWRO_CREATO_TRUNCopenOSErrorerrnormsvcrtlockingZLK_NBLCKclose _lock_file_fd)selfmodefd exceptionr5/usr/lib/python3.9/site-packages/filelock/_windows.py_acquires"   WindowsFileLock._acquirecCsTtt|j}d|_t|tjdt|zt|j Wnt yNYn0dSr) rintrrrZLK_UNLCKrrremoverr)rrrrr _release%s   WindowsFileLock._releaseN__name__ __module__ __qualname____doc__r!r%rrrr r sr c@s,eZdZdZddddZddddZdS) r r r r cCstdSNNotImplementedErrorrrrr r!6sr"cCstdSr,r-r/rrr r%9sr&Nr'rrrr r 3s)Z __future__rrsysrrtypingrZ_apirZ_utilrplatformrr __all__rrrr s      %