o
    GXh                     @   s  dqddZ dd Ze  e e dd Zedd Zd	d
 Zdd
 Zdd
 Zdd Zdd Zdd Z	d dd
 d gZ
dd Zedd
  dd Zdd
 d gZdd ZdZdd Zd\ZZd ZG d!d" d"Zd\ZZd Zd#d$ Zd%d& Ze jZd'd(d)d*Zd+efd,d-Zd.d/ Ze d0d
 d1d2 Z G d3d4 d4Z!d5d6l"m#Z# d7d8 Z$e$d9d: Z%G d;d< d<Z&G d=d> d>Z'G d?d@ d@Z(	 G dAdB dBZ)G dCdD dDZ*G dEdF dFZ+G dGdH dHZ,G dIdJ dJZ-dKdL Z.e.e.G dMdN dNZ/G dOdP dPZ0dQdR Z1G dSdT dTZ2dUdV Z3G dWdX dXZ4	 G dZd[ d[Z5d]d^ Z6d_d` Z7dadb Z8drdedfdgdhdiZ9djdk Z:e:dddld
 dmd5dnd
 fdodpZ;d S )sNc                 C      dd }|S )Nc                 S      | S N funcr   r   >/opt/python-3.10.19/usr/lib/python3.10/test/inspect_fodder2.pywrapper      zwrap.<locals>.wrapperr   )foor   r   r   r   wrap      r   c                 C   r   )Nc                   S   s   t d d S )NZhello)printr   r   r   r   insteadfunc	      zreplace.<locals>.insteadfuncr   )r   r   r   r   r   replace   r   r   c                   C      d S r   r   r   r   r   r   wrapped   s   r   c                   C   r   r   r   r   r   r   r   gone      r   c                 C   r   r   r   mr   r   r   <lambda>       r   c                 C   s   | o| o| S r   r   )gr   r   r   r      s    c                 C      | o| S r   r   )dr   r   r   r   !   s    c                   C   r   r   r   r   r   r   r   onelinefunc%   r   r   c                 C   r   r   r   )arg1arg2Zarg3Zarg4r   r   r   manyargs(   r	   r   c                 C   r   r   r   r   r   r   r   twolinefunc,   s    r    c                 C   r   r   r   )xr   r   r   r   1   r   c                 C   s   | t  d< d S )NZ	anonymous)globalsr   r   r   r   setfunc5   s   r#   c                 C   s   | | S r   r   r!   yr   r   r   r   7   s    c                   C   s   t  d S r   )Zworldr   r   r   r   with_comment:      r&   c                 C   s   | | S r   r   r$   r   r   r   r   ?   r'   c                  C      G dd d} | S )Nc                   @      e Zd Zdd ZdS )zfunc69.<locals>.cls70c                   S   r   r   r   r   r   r   r   func71G   r	   zfunc69.<locals>.cls70.func71N)__name__
__module____qualname__r*   r   r   r   r   cls70F       r.   r   )r.   r   r   r   func69E   s   r0   J   c                   C   r   r   r   r   r   r   r   func77M   r   r2   Zxystopc                   @   r)   )cls82c                   C   r   r   r   r   r   r   r   func83S   r   zcls82.func83N)r+   r,   r-   r5   r   r   r   r   r4   R   r/   r4   c                   C      dS )NZ   r   r   r   r   r   func88X   r   r8   c                  C   r(   )Nc                   @   r)   )zf.<locals>.Xc                   S   r6   )doc*   r   r   r   r   r   r   _   r   zf.<locals>.X.gN)r+   r,   r-   r   r   r   r   r   X^   r/   r;   r   )r;   r   r   r   f]   s   r<      )r   c                 G   r   r   r   )r   r   r   r   r   	keywordedf   r	   r>   r   c                 C   r   r   r   )r   r   r   r   	annotatedj   r	   r?   c                 C   r   r   r   )argr   r   r   keyword_only_argn   r	   rA   c                   C   r   r   r   r   r   r   r   r   q   r   c                   C   r6   )Ns   r   r   r   r   r   func114q   r   rC   c                   @   r)   )ClassWithMethodc                 C   r   r   r   selfr   r   r   methodv   r	   zClassWithMethod.methodN)r+   r,   r-   rG   r   r   r   r   rD   u   r/   rD       wrapsc                 C   s   t | dd }|S )Nc                   S   r6   )Nr:   r   r   r   r   r   fake|   r   zdecorator.<locals>.fakerI   )r   rK   r   r   r   	decorator{   s   
rL   c                   C   r6   )N   r   r   r   r   r   real   r   rN   c                   @   r)   )cls135c                  C   s   dd } d S )Nc                   S   s   t  t d S r   )Znever_reached1Znever_reached2r   r   r   r   func137   s   zcls135.func136.<locals>.func137r   )rP   r   r   r   func136   r   zcls135.func136N)r+   r,   r-   rQ   r   r   r   r   rO      r/   rO   c                   @      e Zd ZdZdS )cls142z
class cls149:
    ...
Nr+   r,   r-   ar   r   r   r   rS          rS   c                   @   r)   )cls149c                 C   r   r   r   rE   r   r   r   func151   r	   zcls149.func151N)r+   r,   r-   rX   r   r   r   r   rW          rW   c                   @   r)   )cls160c                 C   r   r   r   rE   r   r   r   func162   r	   zcls160.func162N)r+   r,   r-   r[   r   r   r   r   rZ      rY   rZ   c                   @   rR   )cls166z#
    class cls175:
        ...
    NrT   r   r   r   r   r\      rV   r\   c                   @      e Zd ZG dd dZdS )cls173c                   @      e Zd ZdS )zcls173.cls175Nr+   r,   r-   r   r   r   r   cls175       ra   N)r+   r,   r-   ra   r   r   r   r   r^          r^   c                   @   r_   )cls179Nr`   r   r   r   r   rd      rb   rd   c                   @   r]   )cls183c                   @   r)   )zcls183.cls185c                 C   r   r   r   rE   r   r   r   func186   r	   zcls183.cls185.func186N)r+   r,   r-   rf   r   r   r   r   cls185   rY   rg   N)r+   r,   r-   rg   r   r   r   r   re      rc   re   c                 C   r   r   r   )clsr   r   r   class_decorator   r	   ri   c                   @   s"   e Zd ZeeG dd dZdS )cls196c                   @   r_   )zcls196.cls200Nr`   r   r   r   r   cls200   s    rk   N)r+   r,   r-   ri   rk   r   r   r   r   rj      s    rj   c                   @   s(   e Zd ZG dd dZG dd dZdS )cls203c                   @   r]   )zcls203.cls204c                   @   r_   )zcls203.cls204.cls205Nr`   r   r   r   r   cls205   rb   rm   Nr+   r,   r-   rm   r   r   r   r   cls204       ro   c                   @   r]   )zcls203.cls207c                   @   r_   )zcls203.cls207.cls205Nr`   r   r   r   r   rm      rb   rm   Nrn   r   r   r   r   cls207   rp   rq   N)r+   r,   r-   ro   rq   r   r   r   r   rl      s    rl   c                  C   r(   )Nc                   @   r_   )zfunc212.<locals>.cls213Nr`   r   r   r   r   cls213   rb   rr   r   )rr   r   r   r   func212      rs   c                   @   r)   )rr   c                 C   s   G dd d}|S )Nc                   @   r_   )zcls213.func219.<locals>.cls220Nr`   r   r   r   r   cls220   rb   ru   r   )rF   ru   r   r   r   func219   rt   zcls213.func219N)r+   r,   r-   rv   r   r   r   r   rr      r/   rr   c                     s   G dd d} | S )Nc                   @   r_   )zfunc225.<locals>.cls226Nr`   r   r   r   r   cls226   rb   rw   r   )rw   r   r   r   func225      rx   c                   @   r)   )rw   c                    s   G dd d}|S )Nc                   @   r_   )zcls226.func232.<locals>.cls233Nr`   r   r   r   r   cls233   rb   rz   r   )rF   rz   r   r   r   func232   ry   zcls226.func232N)r+   r,   r-   r{   r   r   r   r   rw      r/   rw   Tc                   @   r]   )cls238c                   @   rR   )cls238.cls239zif clause cls239Nr+   r,   r-   __doc__r   r   r   r   cls239   rV   r   Nr+   r,   r-   r   r   r   r   r   r|      rp   r|   c                   @   r]   )r|   c                   @   rR   )r}   zelse clause 239Nr~   r   r   r   r   r      s    r   Nr   r   r   r   r   r|      rp   c                C   r   r   r   )rU   r   r   r   positional_only_arg   r	   r   c               C   r   r   r   rU   bcr   er<   r   r   r   all_markers   r	   r   c               O   r   r   r   )rU   r   r   r   r   r<   argskwargsr   r   r    all_markers_with_args_and_kwargs   r	   r               )r   r<   c               C   r   r   r   r   r   r   r   all_markers_with_defaults  r	   r   c                     s    fdd}|S )Nc                    s   t   fdd}|S )Nc                     s   |   | i |S r   )update)rU   Zkwd)r<   r   r   r   r   
  s   
z+deco_factory.<locals>.deco.<locals>.wrapperrI   )r<   r   r   )r<   r   deco	  s   zdeco_factory.<locals>.decor   )r   r   r   r   r   deco_factory  s   r   c                   C   r6   )Nr=   r   r   r   r   r   r     r   r
   Zbarc                   C   r6   )NrH   r   r   r   r   r   r     r   c                 C   s
   | |  S r   r   r   r   r   r   complex_decorated  s   
r   r   )r=   r   r   )<r   r   r   r   ZollZtllZtllir   r   r    rU   r#   r&   Zmultiline_sigr0   Zextra74r2   Zextra78Zstuff78Zextra79r4   Zextra84Zstuff84Zextra85r8   r<   r   Zmethod_in_dynamic_classr>   listr?   rA   rC   rD   	functoolsrJ   rL   rN   rO   rS   rW   rZ   r\   r^   rd   re   ri   rj   rl   rs   rr   rx   rw   r|   r   r   r   r   r   r   r   r   r   r   <module>   s   




	
	