
    Ng                         d dl mZ ddlmZ ddlmZmZmZmZ ddl	m
Z
mZmZmZ ddlmZ ddlmZ ddlmZ  G d	 d
e          ZdS )    )absolute_import   )ScopeTrackingTransform)StatListNodeSingleAssignmentNodeCFuncDefNodeDefNode)DictNodeDictItemNodeNameNodeUnicodeNode)py_object_type)EncodedString)Symtabc                   .    e Zd Zg dZd Zd Zd Zd ZdS )AutoTestDictTransform)	__cinit____dealloc____richcmp____nonzero____bool____len____contains__c           	         |j         r|S d| _        || _        | j        d         s|S | j        d         | _        | j        p| j        d         | _        t          |j        t                    sJ d|j	        j
        v r|S |j        }g | _        |j        | _        |j	                            t          d          t           |d          }t#          |t%          |t          d          |          t'          || j        	          
          }|                     |           |j        j                            |           |S )Nmoduleautotestdictzautotestdict.allzautotestdict.cdef__test__public)
visibility)nameentry)key_value_pairs)lhsrhs)is_pxd
scope_type
scope_nodecurrent_directivesall_docstringscdef_docstrings
isinstancebodyr   scopeentriesposteststestsposdeclare_varr   r   r   r   r
   visitchildrenstatsappend)selfnoder/   test_dict_entrycreate_test_dict_assignments        b/var/www/html/ai-engine/env/lib/python3.11/site-packages/Cython/Compiler/AnalysedTreeTransforms.pyvisit_ModuleNodez&AutoTestDictTransform.visit_ModuleNode   sU   ; 	K"&~6 	K"56HI#2bd6MNa6b$)\22222 $*,,,Kh
*00{1K1K1?14<D 1 F F ';3=#=#=.0 0 0dj999'; '; ';# 	4   	:;;;    c                     | j         }d||d         fz  }t          |t          |                    }t          ||          }| j                            t          |||                     d S )Nz%s (line %d)r   )value)keyr>   )r1   r   r   r0   r5   r   )r6   testpospathdoctestr/   keystrr?   r>   s           r:   add_testzAutoTestDictTransform.add_test4   ss    m D'!*#55#]6%:%:;;;Cw///
,s5AAABBBBBr<   c                     |S )N )r6   r7   s     r:   visit_ExprNodez$AutoTestDictTransform.visit_ExprNode;   s	     r<   c                    |j         rt          |t                    r	|j        r|S | j        st          |t
                    r	|j        s|S | j        sd|j         vr|S | j        }| j	        dk    r|j
        j        }n| j	        dv rt          |t
                    r!|j        |j        j        }n|j
        j        }n|j        }| j	        dk    r|| j        v r|S | j	        dk    r| j        j        }n| j        j        }t          |j
        j        t           j                  r5|j
        j        j        }|d|j
        j        j        d|j
        j        }n|d|j
        j        }nJ |                     |j        ||j                    |S )Nz>>>r   )pyclasscclassrJ   rI   .)docr+   r	   fused_py_funcr*   r   py_funcr)   r1   r&   r!   r    excludelistr'   
class_namer-   r   PropertyScoperD   r/   )r6   r7   r/   rA   r    rP   property_method_names          r:   visit_FuncDefNodez'AutoTestDictTransform.visit_FuncDefNode@   s   x 	JtW55 	$:L 	K# 	$-- dl " 	uDH'<'<Km?h&&:?DD_ 555$-- !<+<,DD:?DDy(**tt7G/G/G)++!_1

!_7
$**F,@AA ?'+z'7'<$%/ZZ1A1F1F1F%)Z__6 #-**djoo>Ldhdh///r<   N)__name__
__module____qualname__rO   r;   rD   rG   rS   rF   r<   r:   r   r   
   se        . . .K! ! !FC C C  
# # # # #r<   r   N)
__future__r   Visitorr   Nodesr   r   r   r	   	ExprNodesr
   r   r   r   
PyrexTypesr   StringEncodingr    r   r   rF   r<   r:   <module>r^      s    & & & & & & + + + + + + L L L L L L L L L L L L D D D D D D D D D D D D & & & & & & ) ) ) ) ) )      Y Y Y Y Y2 Y Y Y Y Yr<   