B
    Áì2aÌ  ã               @   s¶   d d„ Z G dd„ deƒZG dd„ deƒZG dd„ deƒZy,dd	lmZm	Z	m
Z
mZmZmZmZmZ W n* ek
rŽ   dd
lmZmZ de_Y nX G dd„ deƒZG dd„ ded�ZdS )c             C   s
   d| _ | S )NT)Ú__isabstractmethod__)Zfuncobj© r   ú//var/www/html/prediksi/Python-3.7.12/Lib/abc.pyÚabstractmethod   s    r   c                   s    e Zd ZdZ‡ fdd„Z‡  ZS )ÚabstractclassmethodTc                s   d|_ tƒ  |¡ d S )NT)r   ÚsuperÚ__init__)ÚselfÚcallable)Ú	__class__r   r   r   -   s    zabstractclassmethod.__init__)Ú__name__Ú
__module__Ú__qualname__r   r   Ú__classcell__r   r   )r
   r   r      s   r   c                   s    e Zd ZdZ‡ fdd„Z‡  ZS )ÚabstractstaticmethodTc                s   d|_ tƒ  |¡ d S )NT)r   r   r   )r   r	   )r
   r   r   r   D   s    zabstractstaticmethod.__init__)r   r   r   r   r   r   r   r   )r
   r   r   2   s   r   c               @   s   e Zd ZdZdS )ÚabstractpropertyTN)r   r   r   r   r   r   r   r   r   I   s   r   é    )Úget_cache_tokenÚ	_abc_initÚ_abc_registerÚ_abc_instancecheckÚ_abc_subclasscheckÚ	_get_dumpÚ_reset_registryÚ_reset_caches)ÚABCMetar   Úabcc                   sN   e Zd Z‡ fdd„Zdd„ Zdd„ Zdd„ Zdd
d„Zdd„ Zdd„ Z	‡  Z
S )r   c                s"   t ƒ j| |||f|Ž}t|ƒ |S )N)r   Ú__new__r   )ZmclsÚnameZbasesZ	namespaceÚkwargsÚcls)r
   r   r   r   }   s    zABCMeta.__new__c             C   s
   t | |ƒS )N)r   )r   Úsubclassr   r   r   Úregister‚   s    zABCMeta.registerc             C   s
   t | |ƒS )N)r   )r   Zinstancer   r   r   Ú__instancecheck__‰   s    zABCMeta.__instancecheck__c             C   s
   t | |ƒS )N)r   )r   r    r   r   r   Ú__subclasscheck__�   s    zABCMeta.__subclasscheck__Nc             C   sŒ   t d| j› d| j› �|d� t dtƒ › �|d� t| ƒ\}}}}t d|›�|d� t d|›�|d� t d|›�|d� t d|›�|d� d S )	NzClass: Ú.)ÚfilezInv. counter: z_abc_registry: z_abc_cache: z_abc_negative_cache: z_abc_negative_cache_version: )Úprintr   r   r   r   )r   r%   Z_abc_registryZ
_abc_cacheZ_abc_negative_cacheZ_abc_negative_cache_versionr   r   r   Ú_dump_registry‘   s    
zABCMeta._dump_registryc             C   s   t | ƒ d S )N)r   )r   r   r   r   Ú_abc_registry_clear�   s    zABCMeta._abc_registry_clearc             C   s   t | ƒ d S )N)r   )r   r   r   r   Ú_abc_caches_clear¡   s    zABCMeta._abc_caches_clear)N)r   r   r   r   r!   r"   r#   r'   r(   r)   r   r   r   )r
   r   r   p   s   
r   c               @   s   e Zd ZdZdS )ÚABCr   N)r   r   r   Ú	__slots__r   r   r   r   r*   ¦   s   r*   )Ú	metaclassN)r   Úclassmethodr   Ústaticmethodr   Úpropertyr   Z_abcr   r   r   r   r   r   r   r   ÚImportErrorZ_py_abcr   r   Útyper*   r   r   r   r   Ú<module>   s   ,6