
    0Vh{C                     d    d dl mZmZ d dlZd dlZd dlZ G d de      Z G d de      Zd Zd Z	y)	    )	AstToGAst	GAstToAstNc                      e Zd Zej                  j
                  dk  rd Zej                  j
                  dk  r	d Zd Zd Z	ej                  j
                  dk  r*d Z
d	 Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zej                  j
                  dk  rd Zdej                  j
                  cxk  rdk  r
n yd Zd Zyy)
Ast3ToGAst
   c                     t        j                  | j                  |j                        | j                  |j                              }d x|_        |_        d x|_        |_        |S N)	gastalias_visitnameasnamelineno
col_offset
end_linenoend_col_offsetselfnodenew_nodes      9/home/dcms/DCMS/lib/python3.12/site-packages/gast/ast3.pyvisit_aliaszAst3ToGAst.visit_alias
   sV    zzDII&DKK(H 598HOh1<@@H("9O    	   c                     t        j                  | j                  |j                        t        j                               }t        j
                  ||      S r	   )r
   Tupler   dimsLoadcopy_locationr   s      r   visit_ExtSlicezAst3ToGAst.visit_ExtSlice   s8    zz$++dii"8$))+FH%%h55r   c                 8    | j                  |j                        S r	   )r   value)r   r   s     r   visit_IndexzAst3ToGAst.visit_Index   s    ;;tzz**r   c                     t        j                  | j                  |j                        | j                  |j                        d       }t        j
                  ||       d x|_        |_        |S r	   )r
   Assignr   targetsr"   r   r   r   r   s      r   visit_AssignzAst3ToGAst.visit_Assign   sZ    {{DLL)DJJ'H x.<@@H("9Or      c                 d    t        j                  | j                  |j                        g       }|S r	   )r
   Moduler   bodyr   s      r   visit_ModulezAst3ToGAst.visit_Module(   s*    {{DII&H Or   c                 n    t        j                  |j                  d       }t        j                  ||      S r	   )r
   Constantnr   r   s      r   	visit_NumzAst3ToGAst.visit_Num/   /    }}H %%h55r   c                     t        j                  t        d       }t        j                  ||       d x|_        |_        |S r	   )r
   r.   Ellipsisr   r   r   r   s      r   visit_EllipsiszAst3ToGAst.visit_Ellipsis6   s=    }}H x.<@@H("9Or   c                 n    t        j                  |j                  d       }t        j                  ||      S r	   r
   r.   sr   r   s      r   	visit_StrzAst3ToGAst.visit_Str?   r1   r   c                 n    t        j                  |j                  d       }t        j                  ||      S r	   r6   r   s      r   visit_ByteszAst3ToGAst.visit_BytesF   r1   r   c           	      ^   t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                        | j                  |j                        d g       }t        j                  ||      S r	   )	r
   FunctionDefr   r   argsr+   decorator_listreturnsr   r   s      r   visit_FunctionDefzAst3ToGAst.visit_FunctionDefM   s    ''DII&DII&DII&D//0DLL)H %%h55r   c           	      ^   t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                        | j                  |j                        d g       }t        j                  ||      S r	   )	r
   AsyncFunctionDefr   r   r=   r+   r>   r?   r   r   s      r   visit_AsyncFunctionDefz!Ast3ToGAst.visit_AsyncFunctionDefY   s    ,,DII&DII&DII&D//0DLL)H %%h55r   c                 (   t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                        d       }t        j                  ||      S r	   )r
   Forr   targetiterr+   orelser   r   s      r   	visit_ForzAst3ToGAst.visit_Fore   sh    xxDKK(DII&DII&DKK(H %%h55r   c                 (   t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                        d       }t        j                  ||      S r	   )r
   AsyncForr   rF   rG   r+   rH   r   r   s      r   visit_AsyncForzAst3ToGAst.visit_AsyncForo   sh    }}DKK(DII&DII&DKK(H %%h55r   c                     t        j                  | j                  |j                        | j                  |j                        d       }t        j
                  ||      S r	   )r
   Withr   itemsr+   r   r   s      r   
visit_WithzAst3ToGAst.visit_Withy   sH    yyDJJ'DII&H
 %%h55r   c                     t        j                  | j                  |j                        | j                  |j                        d       }t        j
                  ||      S r	   )r
   	AsyncWithr   rO   r+   r   r   s      r   visit_AsyncWithzAst3ToGAst.visit_AsyncWith   sH    ~~DJJ'DII&H
 %%h55r   c                    t         j                  j                  dk  r|j                  r[t	        j
                  | j                  |j                        t	        j                               }t	        j                  ||       |g}ng }|j                  rSt	        j                  d | j                  |j                              }t	        j                  ||j                         |g}ng }ng x}}t	        j                  | j                  |j                        | j                  |j                        |z   | j                  |j                        |z         }t	        j                  ||      S )N   )sysversion_infominorstarargsr
   Starredr   r   r   kwargskeywordCallfuncr=   keywords)r   r   starstarredkwr[   r   s          r   
visit_CallzAst3ToGAst.visit_Call   s
   %%)==<<DMM(B(,		5D&&tT2#fG G;;dDKK,DEB&&r4;;7 TFF#%%&yyDII&DII&0DMM*V3H
 %%h55r   c                    |j                   t        j                  d d       }nI|j                   du rt        j                  dd       }n$|j                   du rt        j                  dd       }t        j                  |      S )NTF)r"   r
   r.   r   r   s      r   visit_NameConstantzAst3ToGAst.visit_NameConstant   sg    zz!==t4t#==t4u$==5%%h55r   c                    t        j                  | j                  |j                        g | j                  |j                        | j                  |j
                        | j                  |j                        | j                  |j                        | j                  |j                              }t        j                  ||      S r	   )
r
   	argumentsr   r=   vararg
kwonlyargskw_defaultskwargdefaultsr   r   s      r   visit_argumentszAst3ToGAst.visit_arguments   s    ~~DII&DKK(DOO,D,,-DJJ'DMM*H %%h55r   c                     t        j                  |j                  | j                  |j                        d d       }t        j                  ||      S r	   )r
   Nameidr   ctxastr   r   s      r   
visit_NamezAst3ToGAst.visit_Name   sB    99GGKK!	
   400r   c                 >   t         j                  j                  dk  rd }n| j                  |j                        }t        j                  |j                  t        j                         | j                  |j                        |      }t        j                  ||      S Nr(   )rV   rW   rX   r   type_commentr
   ro   argParam
annotationrr   r   )r   r   	extra_argr   s       r   	visit_argzAst3ToGAst.visit_arg   su    !!A%ID$5$56I99HHJJLKK(	
   400r   c           	      ^   |j                   rt        j                  | j                  |j                        t        j
                  |j                   t        j                         d d       | j                  |j                              }t        j                  ||      S | j                  |      S r	   )r   r
   ExceptHandlerr   typero   Storer+   rr   r   generic_visitr   s      r   visit_ExceptHandlerzAst3ToGAst.visit_ExceptHandler   s{    99))DII&		$))TZZ\4>DII&(H $$Xt44%%d++r      c                     t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        d      }t        j                  ||      S )Nr   )rF   rG   ifsis_async)r
   comprehensionr   rF   rG   r   rr   r   r   s      r   visit_comprehensionzAst3ToGAst.visit_comprehension   sZ    )){{4;;/[[+KK)	H $$Xt44r      c           
         t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                        | j                  |j                        | j                  |j                        g       }t        j                  ||      S r	   )
r
   r<   r   r   r=   r+   r>   r?   rv   r   r   s      r   r@   zAst3ToGAst.visit_FunctionDef   s    ''DII&DII&DII&D//0DLL)D--.H %%h55r   c           
         t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                        | j                  |j                        | j                  |j                        g       }t        j                  ||      S r	   )
r
   rB   r   r   r=   r+   r>   r?   rv   r   r   s      r   rC   z!Ast3ToGAst.visit_AsyncFunctionDef   s    ,,DII&DII&DII&D//0DLL)D--.H %%h55r   N)__name__
__module____qualname__rV   rW   rX   r   r    r#   r'   r,   r0   r4   r8   r:   r@   rC   rI   rL   rP   rS   rc   re   rm   rs   r{   r   r    r   r   r   r      s    
"	 !	6	+		 !		6		6	6
	6
	6	6	6	6	6	64	6
	611, !	5 	C""'R'
	6
	6 (r   r   c                      e Zd Zej                  j
                  dk  rd Zej                  j
                  dk  rd Zd Zej                  j
                  dk  rd Z	d Z
d	 Zd
 Zd Zej                  j
                  dk  rd Zd Zn.ej                  j
                  dk  rd Zd Zd Zd Zd Zd Zd Zdej                  j
                  cxk  rdk  rn nd Zdej                  j
                  cxk  rdk  rn d Zyd Zd Zd Zy)
GAstToAst3r   c                     t        j                  | j                  |j                        | j                  |j                              }|S r	   )rr   r   r   r   r   r   s      r   r   zGAstToAst3.visit_alias   s7    yyDII&DKK(H Or   r   c                    d }t        |j                  t        j                        rt	        d |j                  j
                  D              rMt        j                  | j                  |j                  j
                        D cg c]
  } ||       c}      }nt        j                  | j                  |j                  j
                        t        j                               }t        j                  ||j                         t        j                  |      }n! || j                  |j                              }t        j                  ||j                         t        j                  | j                  |j                        || j                  |j                              }t        j                  ||      S c c}w )Nc                 d    t        | t        j                        r| S t        j                  |       S r	   )
isinstancerr   SliceIndex)r7   s    r   adjust_slicez0GAstToAst3.visit_Subscript.<locals>.adjust_slice	  s#    a+H99Q<'r   c              3   P   K   | ]  }t        |t        j                           y wr	   )r   r
   slice).0elts     r   	<genexpr>z-GAstToAst3.visit_Subscript.<locals>.<genexpr>  s     Nsz#tzz2Ns   $&)r   r   r
   r   anyeltsrr   ExtSlicer   r   r   r   	Subscriptr"   rq   )r   r   r   x	new_slicer"   r   s          r   visit_SubscriptzGAstToAst3.visit_Subscript  s'   (
 $**djj1NdjjooNN #TZZ__57Qa 7!8I  IIdkk$**//&BCHHJOE%%eTZZ8 #		% 0I(TZZ)@A	i4}}DJJ'DHH%H
 $$Xt447s   F<c                     t        j                  | j                  |j                        | j                  |j                              }t        j
                  ||      S r	   )rr   r%   r   r&   r"   r   r   s      r   r'   zGAstToAst3.visit_Assign"  sE    ::KK%KK

#

   400r   r(   c                 b    t        j                  | j                  |j                              }|S r	   )rr   r*   r   r+   r   s      r   r,   zGAstToAst3.visit_Module,  s"    zz$++dii"89HOr   c                    |j                    t        j                  |j                         }n|j                   t        u rt        j                         }nt	        |j                   t
              r t        j                  |j                         }nt	        |j                   t        t        t        f      r t        j                  |j                         }nYt	        |j                   t              r t        j                  |j                         }nt        j                  |j                         }t        j                  ||      S r	   )r"   rr   NameConstantr3   r   boolintfloatcomplexNumstrStrBytesr   r   s      r   visit_ConstantzGAstToAst3.visit_Constant0  s    zz!++DJJ7x'<<>DJJ-++DJJ7DJJeW(=>774::.DJJ,774::.99TZZ0$$Xt44r   c                 N   |y t         j                  j                  dk  rt               }n| j	                  |j
                        f}t        j                  | j	                  |j                        | j	                  |j                        g| }t        j                  ||      S ru   )rV   rW   rX   tupler   rv   rr   rw   rp   ry   r   )r   r   
extra_argsr   s       r   	_make_argzGAstToAst3._make_arg?  s    <!!A%JT%6%678J77KK KK(
 

   400r   c                     t        j                  | j                  |j                        | j                  |j                              }t        j
                  ||      S r	   )rr   ro   r   rp   rq   r   r   s      r   rs   zGAstToAst3.visit_NameO  sE    88KK KK!
   400r   c                 "   |j                   rst        j                  | j                  |j                        |j                   j
                  | j                  |j                              }t        j                  ||      S | j                  |      S r	   )	r   rr   r}   r   r~   rp   r+   r   r   r   s      r   r   zGAstToAst3.visit_ExceptHandlerV  sj    99((DII&		DII&(H $$Xt44%%d++r   rU   c           	         |j                   rPt        |j                   d   t        j                        r)|j                   d d }|j                   d   j                  }n|j                   }d }|j
                  rB|j
                  d   j                  )|j
                  d d }|j
                  d   j                  }n|j
                  }d }t        j                  | j                  |j                        | j                  |      | j                  |      | j                  |      | j                  |            }t        j                  ||      S )N)r=   r   r
   rZ   r"   r_   rw   rr   r]   r   r^   r   )r   r   r=   rY   r_   r[   r   s          r   rc   zGAstToAst3.visit_Callb  s    yyZ		"t||Dyy"~99R=..yy}}r!2!6!6!>=="-r*00==xxDII&D!H%H%F#H $$Xt44r   c           	         | j                  |       t        j                  | j                  |j                        | j                  |j
                        | j                  |j                        | j                  |j                        | j                  |j                        d d       }t        j                  ||      S )N)r   basesr_   r+   r>   rY   r[   )
r   rr   ClassDefr   r   r   r_   r+   r>   r   r   s      r   visit_ClassDefzGAstToAst3.visit_ClassDefz  s    t$||[[+kk$**-T]]3[[+#{{4+>+>?H $$Xt44r   c           	      Z   t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                        | j                  |j                              }t        j                  ||      S r	   )	rr   r<   r   r   r=   r+   r>   r?   r   r   s      r   r@   zGAstToAst3.visit_FunctionDef  sw    DII&DII&DII&D//0DLL)H $$Xt44r   c           	      Z   t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                        | j                  |j                              }t        j                  ||      S r	   )	rr   rB   r   r   r=   r+   r>   r?   r   r   s      r   rC   z!GAstToAst3.visit_AsyncFunctionDef  sy    ++DII&DII&DII&D//0DLL)H $$Xt44r   c                 &   t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                              }t        j                  ||      S r	   )rr   rE   r   rF   rG   r+   rH   r   r   s      r   rI   zGAstToAst3.visit_For  se    wwDKK(DII&DII&DKK(	H $$Xt44r   c                 (   t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                        d       }t        j                  ||      S r	   )rr   rK   r   rF   rG   r+   rH   r   r   s      r   rL   zGAstToAst3.visit_AsyncFor  sh    ||DKK(DII&DII&DKK(H $$Xt44r   c                     t        j                  | j                  |j                        | j                  |j                              }t        j
                  ||      S r	   )rr   rN   r   rO   r+   r   r   s      r   rP   zGAstToAst3.visit_With  sE    xxDJJ'DII&H $$Xt44r   c                     t        j                  | j                  |j                        | j                  |j                              }t        j
                  ||      S r	   )rr   rR   r   rO   r+   r   r   s      r   rS   zGAstToAst3.visit_AsyncWith  sE    }}DJJ'DII&H $$Xt44r   c                     t        j                  | j                  |j                        | j                  |j                        | j                  |j
                              }t        j                  ||      S r	   )rr   r]   r   r^   r=   r_   r   r   s      r   rc   zGAstToAst3.visit_Call  sU    xxDII&DII&DMM*H
 $$Xt44r   r   c           	      Z   t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                        | j                  |j                              }t        j                  ||      S r	   )	rr   r   r   r   r   r_   r+   r>   r   r   s      r   r   zGAstToAst3.visit_ClassDef  sw    ||DII&DJJ'DMM*DII&D//0H $$Xt44r   c           
         t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                        | j                  |j                        | j                  |j                              }t        j                  ||      S r	   )
rr   r<   r   r   r=   r+   r>   r?   rv   r   r   s      r   r@   zGAstToAst3.visit_FunctionDef  s    DII&DII&DII&D//0DLL)D--.H $$Xt44r   c           
         t        j                  | j                  |j                        | j                  |j                        | j                  |j
                        | j                  |j                        | j                  |j                        | j                  |j                              }t        j                  ||      S r	   )
rr   rB   r   r   r=   r+   r>   r?   rv   r   r   s      r   rC   z!GAstToAst3.visit_AsyncFunctionDef  s    ++DII&DII&DII&D//0DLL)D--.H $$Xt44r   c           	         | j                  |j                        |j                  D cg c]  }| j                  |       c}| j                  |j                        | j                  |j
                        | j                  |j                        g}t        j                  j                  dk\  rgt        j                  |j                  D cg c]  }| j                  |       c}|j                  D cg c]  }| j                  |       c}g| }|S t        j                  |j                  D cg c]  }| j                  |       c}g| }|S c c}w c c}w c c}w c c}w ru   )r   rh   ri   r   rj   rk   rl   rV   rW   rX   rr   rg   posonlyargsr=   )r   r   r/   r   rw   r   s         r   rm   zGAstToAst3.visit_arguments  s!   nnT[[126//BQt~~a(Bkk$"2"23nnTZZ0kk$--0	4

 !!Q&}}040@0@A$A,0II6q"6 H 	 }},0II6q"6H  C B6
 7s   EE5E 
4E%N)r   r   r   rV   rW   rX   r   r   r'   r,   r   r   rs   r   rc   r   r@   rC   rI   rL   rP   rS   rm   r   r   r   r   r      s   
"	 !	541 !		51 1, !	50	5 
				!	#	5	5	5	5	5	5	5 	
S##(b(	5 	
S##(b(21		5		5r   r   c                 4    t               j                  |       S r	   )r   visitr   s    r   ast_to_gastr         <d##r   c                 4    t               j                  |       S r	   )r   r   r   s    r   gast_to_astr     r   r   )
	gast.astnr   r   r
   rr   rV   r   r   r   r   r   r   r   <module>r      s9    *  
 
t6 t6n| |~$$r   