Server IP : 111.118.215.189 / Your IP : 18.218.183.7 Web Server : Apache System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64 User : a1673wkz ( 2475) PHP Version : 8.2.25 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /lib64/python3.6/__pycache__/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
3 \��@sndZddlZddlZddlZddlZdddgZddd�Ziadd�Zddd �Z dd d�Z ddd�Zd d�ZdS)z�Cache lines from Python source files. This is intended to read lines from modules imported -- hence if a filename is not found, it will look down the module search path for a file by that name. �N�getline� clearcache� checkcachecCs:t||�}d|ko t|�knr2||dSdSdS)N��)�getlines�len)�filename�lineno�module_globals�lines�r �!/usr/lib64/python3.6/linecache.pyrs cCsiadS)zClear the cache entirely.N)�cacher r r rrscCsR|tkr(t|}t|�dkr(t|dSy t||�Stk rLt�gSXdS)z�Get the lines for a Python source file from the cache. Update the cache if it doesn't contain an entry for this file already.r�N)rr�updatecache�MemoryErrorr)r r�entryr r rr%s rcCs�|dkrttj��}n|tkr&|g}ndSx~|D]v}t|}t|�dkrJq0|\}}}}|dkr`q0ytj|�}Wntk r�t|=w0YnX||jks�||jkr0t|=q0WdS)zUDiscard cache entries that are out of date. (This is not checked upon each call!)Nr) �listr�keysr�os�stat�OSError�st_size�st_mtime)r � filenamesr�size�mtimer�fullnamerr r rr5s& c"Cs�|tkrtt|�dkrt|=|s8|jd�r<|jd�r<gS|}ytj|�}W�ntk �rV|}t||�r�yt|d�}Wnttfk r�Yn<X|dkr�gSt|�ddd�|j �D�|ft|<t|dStj j|�r�gSxjtj D]\}ytj j ||�}Wnttfk �r w�YnXytj|�}PWq�tk �rHYq�Xq�WgSYnXy"tj|��}|j�}WdQRXWntk �r�gSX|�r�|d jd ��r�|dd 7<|j|j} } | | ||ft|<|S)z�Update a cache entry and return its list of lines. If something's wrong, print a message, discard the cache entry, and return an empty list.r�<�>rNcSsg|]}|d�qS)� r )�.0�liner r r� <listcomp>qszupdatecache.<locals>.<listcomp>rr!���r%)rr� startswith�endswithrrr� lazycache�ImportError� splitlines�path�isabs�sys�join� TypeError�AttributeError�tokenize�open� readlinesrr)r rrr�basename�data�dirname�fprrrr r rrRsV rcCs�|tkr tt|�dkrdSdS|s:|jd�r>|jd�r>dS|r�d|kr�|jd�}|d}t|dd �}|r�|r�tj||�}|ft|<dSdS) a�Seed the cache for filename with module_globals. The module loader will be asked for the source only when getlines is called, not immediately. If there is an entry in the cache already, it is not altered. :return: True if a lazy load is registered in the cache, otherwise False. To register such a load a module loader with a get_source method must be found, the filename must be a cachable filename, and the filename must not be already cached. rTFrr � __loader__�__name__� get_sourceN)rrr&r'�get�getattr� functools�partial)r r�name�loaderr:� get_linesr r rr(�s r()N)N)N)N) �__doc__r=r-rr1�__all__rrrrrrr(r r r r�<module>s A