a
    äze‡  ã                   @   sÆ   d dl Z d dlZddd„Zdd„ ZG d	d
„ d
ƒZG dd„ deƒZeZG dd„ dƒZG dd„ deeƒZdd„ Z	e 
¡ Z
z
eƒ ‚W n   e  ¡ d ZY n0 G dd„ dƒZeƒ  d¡Z[G dd„ dƒZdS )é    Né   é   é   c                O   s   t || || ƒ d S ©N)Úeggs)ÚaÚbÚcÚdÚeÚfÚgÚh© r   ú)/usr/lib/python3.9/test/inspect_fodder.pyÚspam   s    r   c                 C   s    t  ¡ at  ¡ a| }|d }d S )Nr   )ÚinspectÚcurrentframeÚfrÚstackÚst)ÚxÚyÚpÚqr   r   r   r      s    r   c                   @   s(   e Zd Zdd„ Zdd„ Zedd„ ƒZdS )Ú	StupidGitc                 C   s   |   |||¡ d S r   )Úargue©Úselfr   r   r	   r   r   r   Úabuse   s    
zStupidGit.abusec                 C   s6   zt |||ƒ W n    t ¡ | _t ¡ | _Y n0 d S r   )r   ÚsysÚexc_infoÚexr   ZtraceÚtrr   r   r   r   r   )   s
    
zStupidGit.arguec                 C   s   d S r   r   ©r   r   r   r   Úcontradiction0   s    zStupidGit.contradictionN)Ú__name__Ú
__module__Ú__qualname__r   r   Úpropertyr%   r   r   r   r   r      s   r   c                   @   s    e Zd Zdd„ Zedd„ ƒZdS )ÚMalodorousPervertc                 C   s   d S r   r   r   r   r   r   r   7   s    zMalodorousPervert.abusec                 C   s   d S r   r   r$   r   r   r   r%   :   s    zMalodorousPervert.contradictionN©r&   r'   r(   r   r)   r%   r   r   r   r   r*   6   s   r*   c                   @   s   e Zd ZdS )ÚParrotDroppingsN)r&   r'   r(   r   r   r   r   r,   @   s   r,   c                   @   s    e Zd Zdd„ Zedd„ ƒZdS )ÚFesteringGobc                 C   s   d S r   r   r   r   r   r   r   D   s    zFesteringGob.abusec                 C   s   d S r   r   r$   r   r   r   r%   G   s    zFesteringGob.contradictionNr+   r   r   r   r   r-   C   s   r-   c                 Ã   s   d S r   r   )Zgrenader   r   r   ÚlobbestK   s    r.   é   c                   @   s   e Zd Zdd„ Zdd„ ZdS )ÚCallablec                 G   s   |S r   r   )r   Úargsr   r   r   Ú__call__U   s    zCallable.__call__c                 C   s   ddl m} || |ƒS )Nr   )Ú
MethodType)Útypesr3   )r   Úobjr3   r   r   r   Úas_method_ofX   s    zCallable.as_method_ofN)r&   r'   r(   r2   r6   r   r   r   r   r0   T   s   r0   é*   c                   @   s   e Zd Zdd„ Zdd„ ZdS )ÚWhichCommentsc                 C   s   dS )Né   r   r$   r   r   r   r   c   s    zWhichComments.fc                 Ã   s   dS )Nr/   r   r$   r   r   r   Úasyncfm   s    zWhichComments.asyncfN)r&   r'   r(   r   r:   r   r   r   r   r8   `   s   
r8   )r   r   r   )r    r   r   r   r   r*   ZTitr,   r-   r.   r   Ú	Exceptionr!   Útbr0   r6   Zcustom_methodr8   r   r   r   r   Ú<module>   s"   
	!
