Server IP : 111.118.215.189 / Your IP : 3.149.29.120 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 \�,�@s�dZdZddlZddlZddlZddlZeed�s:ed��dddgZda da d d �Zdd�ZGd d�de �Zdd�ZGdd�d�Zdd�Zdd�Zedkr�e�dS)a�The Tab Nanny despises ambiguous indentation. She knows no mercy. tabnanny -- Detection of ambiguous indentation For the time being this module is intended to be called as a script. However it is possible to import it into an IDE and use the function check() described below. Warning: The API provided by this module is likely to change in future releases; such changes may not be backward compatible. �6�N�NLz4tokenize.NL doesn't exist -- tokenize module too old�check�NannyNag�process_tokenscGs:d}x$|D]}tjj|t|��d}q Wtjjd�dS)N�� � )�sys�stderr�write�str)�args�sep�arg�r� /usr/lib64/python3.6/tabnanny.py�errprint#s rcCs�ytjtjdd�d�\}}Wn*tjk rH}zt|�dSd}~XnXx0|D](\}}|dkrhtda|dkrPtdaqPW|s�tdtjdd�dSx|D]}t|�q�WdS)N�Zqvz-qz-vzUsage:rz[-v] file_or_directory ...)�getoptr �argv�errorr� filename_only�verboser)Zoptsr�msg�o�arrrr�main*s rc@s0eZdZdZdd�Zdd�Zdd�Zdd �Zd S)rzk Raised by process_tokens() if detecting an ambiguous indent. Captured and handled in check(). cCs||||_|_|_dS)N)�linenor�line)�selfrrrrrr�__init__AszNannyNag.__init__cCs|jS)N)r)r rrr� get_linenoCszNannyNag.get_linenocCs|jS)N)r)r rrr�get_msgEszNannyNag.get_msgcCs|jS)N)r)r rrr�get_lineGszNannyNag.get_lineN)�__name__� __module__�__qualname__�__doc__r!r"r#r$rrrrr<s c %Cs"tjj|�r�tjj|�r�tr,td|f�tj|�}xT|D]L}tjj||�}tjj|�rhtjj|�s�tjj|dd��dkr<t |�q<WdSyt j|�}Wn0tk r�}zt d||f�dSd}~XnXtdkr�td|��zytt j|j��W�n�t jk �r2}zt d||f�dSd}~Xn�tk �rb}zt d ||f�dSd}~Xn�tk �r�}z||j�}|j�}t�r�td ||f�td|f�t|j��n6d|k�r�d |d }t�r�t|�nt||t|��dSd}~XnXWd|j�Xt�rtd|f�dS)a~check(file_or_dir) If file_or_dir is a directory and not a symbolic link, then recursively descend the directory tree named by file_or_dir, checking all .py files along the way. If file_or_dir is an ordinary Python source file, it is checked for whitespace related problems. The diagnostic messages are written to standard output using the print statement. z%r: listing directory�Nz.pyz%r: I/O Error: %srzchecking %r ...z%r: Token Error: %sz%r: Indentation Error: %sz)%r: *** Line %d: trouble in tab city! ***zoffending line: %rr�"z%r: Clean bill of health.���)�os�path�isdir�islinkr�print�listdir�join�normcaser�tokenize�open�OSErrorrr�generate_tokens�readline� TokenError�IndentationErrorrr"r$r#r�repr�close) �file�names�name�fullname�frZnag�badlinerrrrrJsT c@sLeZdZd\ZZdd�Zdd�Zdd�Zdd �Zd d�Z dd �Z dd�ZdS)� Whitespacez c Cs�||_tjtj}}g}d}}}x~|jD]t}||krJ|d}|d}q,||kr�|d}|d}|t|�kr�|dg|t|�d}||d||<d}q,Pq,W||_||_t|�|f|_t|�dk|_ dS)Nrr) �rawrC�S�T�len�n�nt�tuple�norm� is_simple) r ZwsrErF�count�brHrIZchrrrr!�s( zWhitespace.__init__cCs|j\}}tt|�d|�S)Nr)rK�maxrG)r rM�trailingrrr�longest_run_of_spaces�s z Whitespace.longest_run_of_spacescCsL|j\}}d}x*t|t|��D]}|||||}qW||||jS)Nr)rK�rangerGrI)r �tabsizerMrPZil�irrr�indent_level�s zWhitespace.indent_levelcCs|j|jkS)N)rK)r �otherrrr�equal�szWhitespace.equalcCsft|j�|j��d}g}xFtd|d�D]4}|j|�|j|�kr*|j||j|�|j|�f�q*W|S)Nr)rOrQrRrU�append)r rVrHr�tsrrr�not_equal_witness�szWhitespace.not_equal_witnesscCsr|j|jkrdS|jr(|jr(|j|jkSt|j�|j��d}x.td|d�D]}|j|�|j|�krNdSqNWdS)NFr�T)rHrLrIrOrQrRrU)r rVrHrYrrr�less�szWhitespace.lesscCsft|j�|j��d}g}xFtd|d�D]4}|j|�|j|�kr*|j||j|�|j|�f�q*W|S)Nr)rOrQrRrUrX)r rVrHrrYrrr�not_less_witnessszWhitespace.not_less_witnessN)r%r&r'rErFr!rQrUrWrZr\r]rrrrrC�srCcCs8dd�|D�}d}t|�dkr&|d}|ddj|�S)Ncss|]}t|d�VqdS)rN)r )�.0�tuprrr� <genexpr>sz#format_witnesses.<locals>.<genexpr>zat tab sizer�srz, )rGr2)�wZfirsts�prefixrrr�format_witnesses s rdcCstj}tj}tj}tjtjf}td�g}d}x�|D]�\}}} } }||krNd}q2||kr�d}t|�}|dj|�s�|dj|�} dt | �}t | d||��|j|�q2||kr�d}|d=q2|o�||kr2d}t|�}|d j|�s2|d j |�} dt | �}t | d||��q2WdS)Nrrrzindent not greater e.g. zindent not equal e.g. ���rererere)r4�INDENT�DEDENT�NEWLINE�COMMENTrrCr\r]rdrrXrWrZ)�tokensrfrgrhZJUNK�indentsZcheck_equal�type�token�start�endrZthisguyZwitnessrrrrrs6 �__main__)r(�__version__r,r rr4�hasattr� ValueError�__all__rrrr� ExceptionrrrCrdrr%rrrr�<module> s( =7