o
    b                     @   s   d Z ddlmZ ddlZG dd deZG dd deZG dd	 d	eZG d
d deejdZ	G dd de	Z
G dd de	ZG dd de	ZG dd de	ZG dd de	ZG dd de
eeeZG dd de
eeZdS )zTest abstract-method warning.    )print_functionNc                   @   s   e Zd Zdd Zdd ZdS )Abstractc                 C      t  z&should be overridden in concrete classNotImplementedErrorself r
   i/var/www/secure340b-portal/env/lib/python3.10/site-packages/pylint/test/functional/abstract_method_py3.pyaaaa	      zAbstract.aaaac                 C   r   r   r   r   r
   r
   r   bbbb   r   zAbstract.bbbbN)__name__
__module____qualname__r   r   r
   r
   r
   r   r      s    r   c                   @      e Zd ZdZdd ZdS )	AbstractBzAbstract class.

    this class is checking that it does not output an error msg for
    unimplemeted methods in abstract classes
    c                 C   r   r   r   r   r
   r
   r   cccc   r   zAbstractB.ccccN)r   r   r   __doc__r   r
   r
   r
   r   r      s    r   c                   @   r   )ConcretezConcrete classc                 C   s   dS )zoveridden form AbstractNr
   r   r
   r
   r   r      s    zConcrete.aaaaN)r   r   r   r   r   r
   r
   r
   r   r      s    r   c                   @   sD   e Zd Zejdd Zejdd Zejdd Zejdd Zd	S )
	Structurec                 C      d S Nr
   r   r
   r
   r   __iter__$      zStructure.__iter__c                 C   r   r   r
   r   r
   r
   r   __len__'   r   zStructure.__len__c                 C   r   r   r
   r	   _r
   r
   r   __contains__*   r   zStructure.__contains__c                 C   r   r   r
   r   r
   r
   r   __hash__-   r   zStructure.__hash__N)	r   r   r   abcabstractmethodr   r   r   r    r
   r
   r
   r   r   #   s    


r   )	metaclassc                   @      e Zd Zdd ZdS )	Containerc                 C   r   r   r
   r   r
   r
   r   r   4      zContainer.__contains__N)r   r   r   r   r
   r
   r
   r   r%   3       r%   c                   @   r$   )Sizablec                 C   r   r   r
   r   r
   r
   r   r   :   r&   zSizable.__len__N)r   r   r   r   r
   r
   r
   r   r(   9   r'   r(   c                   @   s   e Zd ZdZdS )Hashable*   N)r   r   r   r    r
   r
   r
   r   r)   ?   s    r)   c                   @   s   e Zd Zdd ZeZdS )Iteratorc                 C   s   t g dS )N)         )iterr   r
   r
   r   keysE   s   zIterator.keysN)r   r   r   r0   r   r
   r
   r
   r   r+   D   s    r+   c                   @   s   e Zd Zejdd ZeZdS )AbstractSizablec                 C   r   r   r
   r   r
   r
   r   lengthL   r   zAbstractSizable.lengthN)r   r   r   r!   r"   r2   r   r
   r
   r
   r   r1   K   s    
r1   c                   @      e Zd ZdS )GoodComplexMRONr   r   r   r
   r
   r
   r   r4   R       r4   c                   @   r3   )BadComplexMroNr5   r
   r
   r
   r   r7   W   r6   r7   )r   
__future__r   r!   objectr   r   r   ABCMetar   r%   r(   r)   r+   r1   r4   r7   r
   r
   r
   r   <module>   s    

