a
    lJh<                     @   s   d dl Z d dlZd dlmZ d dlmZ dZdZee j	
dZeG dd deZeZeszd	d
lmZ W n ey~   Y n0 eZdS )    N)MutableSequence)total_orderingz1.7.0)
FrozenListPyFrozenListZFROZENLIST_NO_EXTENSIONSc                   @   s   e Zd ZdZeejZd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 Zdd Zdd Zdd Zdd Zdd ZdS ) r   _frozen_itemsNc                 C   s&   d| _ |d urt|}ng }|| _d S )NF)r   listr   )selfitems r   E/var/www/shaz/venv/lib/python3.9/site-packages/frozenlist/__init__.py__init__   s
    
zFrozenList.__init__c                 C   s   | j S Nr   r
   r   r   r   frozen   s    zFrozenList.frozenc                 C   s
   d| _ d S )NTr   r   r   r   r   freeze   s    zFrozenList.freezec                 C   s
   | j | S r   )r   r
   indexr   r   r   __getitem__"   s    zFrozenList.__getitem__c                 C   s   | j rtd|| j|< d S NzCannot modify frozen list.r   RuntimeErrorr   )r
   r   valuer   r   r   __setitem__%   s    zFrozenList.__setitem__c                 C   s   | j rtd| j|= d S r   r   r   r   r   r   __delitem__*   s    zFrozenList.__delitem__c                 C   s
   | j  S r   )r   __len__r   r   r   r   r   /   s    zFrozenList.__len__c                 C   s
   | j  S r   )r   __iter__r   r   r   r   r   2   s    zFrozenList.__iter__c                 C   s
   | j  S r   )r   __reversed__r   r   r   r   r   5   s    zFrozenList.__reversed__c                 C   s   t | |kS r   r	   r
   otherr   r   r   __eq__8   s    zFrozenList.__eq__c                 C   s   t | |kS r   r    r!   r   r   r   __le__;   s    zFrozenList.__le__c                 C   s    | j rtd| j|| d S r   )r   r   r   insert)r
   positemr   r   r   r%   >   s    zFrozenList.insertc                 C   s   d| j  d| jdS )Nz<FrozenList(frozen=z, z)>r   r   r   r   r   __repr__C   s    zFrozenList.__repr__c                 C   s   | j rtt| S tdd S )NzCannot hash unfrozen list.)r   hashtupler   r   r   r   r   __hash__F   s    zFrozenList.__hash__)N)__name__
__module____qualname__	__slots__classmethodtypesGenericAlias__class_getitem__r   propertyr   r   r   r   r   r   r   r   r#   r$   r%   r(   r+   r   r   r   r   r      s"   


r      )r   )osr1   collections.abcr   	functoolsr   __version____all__boolenvirongetZNO_EXTENSIONSr   r   Z_frozenlistZCFrozenListImportErrorr   r   r   r   <module>   s   >