o
9j#, @ s d Z dZddlZddlZddlZg dZdadadd Zdd Z G d d
d
e
Zdd ZG d
d dZ
dd Zdd ZedkrDe dS 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)checkNannyNagprocess_tokensc G s6 d}| D ]}t j|t| d}qt jd d S )N
)sysstderrwritestr)argsseparg r /usr/lib/python3.10/tabnanny.pyerrprint s
r c
C s dd l } z| tjdd d\}}W n | jy+ } zt| W Y d }~d S d }~ww |D ]\}}|dkr:td a|dkrBtd aq.|sPtdtjd d d S |D ]}t| qRd S )Nr qvz-qz-vzUsage:z[-v] file_or_directory ...)getoptr argverrorr
filename_onlyverboser )r optsr
msgoar r r r main' s(
r c @ s0 e Zd ZdZdd Zdd Zdd Zdd Zd
S )r zk
Raised by process_tokens() if detecting an ambiguous indent.
Captured and handled in check().
c C s |||| _ | _| _d S N)linenor line)selfr r r! r r r __init__@ s zNannyNag.__init__c C | j S r )r r" r r r
get_linenoB zNannyNag.get_linenoc C r$ r )r r% r r r get_msgD r' zNannyNag.get_msgc C r$ r )r! r% r r r get_lineF r' zNannyNag.get_lineN)__name__
__module____qualname____doc__r# r&