
    h                         d dl mZ d dlmZmZ d dlmZmZmZ d dl	m
Z
 d dlmZ d dlmZ d dlmZ d dlmZmZmZ eeef   Z ed	      Ze G d
 de
e                Zy)    )Iterator)	dataclassfield)AnyTypeVarUnion)Visitor)out)lib2to3_parse)token)LeafNode	type_reprTc                       e Zd ZU dZeed<    ee      Zee	   ed<   dZ
eed<   de	ded	ed
dfdZded
ee   fdZedee	eef   d
dfd       Zy)DebugVisitorr   
tree_depth)default_factorylist_outputTprint_outputmessageargskwargsreturnNc                 r    | j                   j                  |       | j                  rt        |g|i | y y )N)r   appendr   r
   )selfr   r   r   s       >/var/www/html/immo/lib/python3.12/site-packages/black/debug.pyr
   zDebugVisitor.out   s6    ()$)&)     nodec              #     K   dd| j                   z  z  }t        |t              rt        |j                        }| j                  | | d       | xj                   dz  c_         |j                  D ]  }| j                  |      E d {     | xj                   dz  c_         | j                  | d| dd       y t        j                  j                  |j                  t        |j                              }| j                  | | d	d
       |j                  r"| j                  d|j                  ddd       | j                  d|j                  d	d       y 7 ڭw)N    yellow)fg   /F)r%   boldblue)r%   nlgreen)r%   r(   r*   )r   
isinstancer   r   typer
   childrenvisitr   tok_namegetstrprefixvalue)r   r    indent_typechilds        r   visit_defaultzDebugVisitor.visit_default   s1    DOO+,dD!dii(EHHxw'HH5OOq O -::e,,,- OOq OHHxq(XEHBNN&&tyy#dii.AEHHxw'FuH={{ 1T[[O,uOHHq'FH? -s   BE&	E$
CE&codec                     t               }t        |t              rt        |      }t	        |j                  |             y)zmPretty-print the lib2to3 AST of a given string of `code`.

        Convenience method for debugging.
        N)r   r,   r2   r   listr/   )clsr9   vs      r   showzDebugVisitor.show.   s/     !-dC  &DQWWT]r   )__name__
__module____qualname__r   int__annotations__r   r;   r   r2   r   boolr   r
   LNr   r   r8   classmethodr   r   r   r>    r   r   r   r      s    J"48Kc8L$*3 *s *c *d *
@" @! @( c4o. 4  r   r   N)collections.abcr   dataclassesr   r   typingr   r   r   black.nodesr	   black.outputr
   black.parsingr   blib2to3.pgen2r   blib2to3.pytreer   r   r   rE   r   r   rG   r   r   <module>rP      sY    $ ( & &   '   1 1
4:CL '71: ' 'r   