ó
    Ï›‘h¦  ã                   ó¾  • S r SSKrSSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SSKJr  SS	K	J
r
  SS
KJr  SSKJr  \4S4S jr/ SQr " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\\\5      r " S S \\5      r " S! S"\5      r\
(       a   " S# S$\5      r " S% S&\5      r " S' S(\5      r " S) S*\5      r " S+ S,\5      r " S- S.\5      r " S/ S0\\5      r  " S1 S2\\5      r! " S3 S4\\5      r" " S5 S6\5      r# " S7 S8\#5      r$ " S9 S:\5      r% " S; S<\%5      r& " S= S>\&5      r'g)?aó  
Interface definitions paralleling the abstract base classes defined in
:mod:`collections.abc`.

After this module is imported, the standard library types will declare that
they implement the appropriate interface. While most standard library types
will properly implement that interface (that is, ``verifyObject(ISequence,
list()))`` will pass, for example), a few might not:

    - `memoryview` doesn't feature all the defined methods of
      ``ISequence`` such as ``count``; it is still declared to provide
      ``ISequence`` though.

    - `collections.deque.pop` doesn't accept the ``index`` argument of
      `collections.abc.MutableSequence.pop`

    - `range.index` does not accept the ``start`` and ``stop`` arguments.

.. versionadded:: 5.0.0
é    N)ÚABCMeta)ÚOrderedDict)ÚUserDict)ÚUserList)Ú
UserString)Úabc)ÚPY313_OR_OLDER)ÚABCInterface)Úoptional© c                 óŠ   • U(       a  [        [        U 5      $ [        XSSU -  05      nU H  nUR                  U5        M     U$ )NÚ__doc__z4The ABC %s is not defined in this version of Python.)Úgetattrr   r   Úregister)ÚnameÚverÚbases_if_missingÚregister_if_missingÚmissingÚcs         ÚeC:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\zope/interface/common/collections.pyÚ_new_in_verr   4   sV   € ö Ü”s˜DÓ!Ð!ô �dØÐIØñ
ð/ó €Gó !ˆØ×Ñ˜Öñ !ð €Nó    )ÚIAsyncGeneratorÚIAsyncIterableÚIAsyncIteratorÚ
IAwaitableÚICollectionÚ
IContainerÚ
ICoroutineÚ
IGeneratorÚ	IHashableÚ
IItemsViewÚ	IIterableÚ	IIteratorÚ	IKeysViewÚIMappingÚIMappingViewÚIMutableMappingÚIMutableSequenceÚIMutableSetÚIReversibleÚ	ISequenceÚISetÚISizedÚIValuesViewc                   ó<   • \ rS rSr\R
                  r\S 5       rSrg)r   éc   c                 ó   • g)z‚
Optional method. If not provided, the interpreter will use
``__iter__`` or the old ``__getitem__`` protocol
to implement ``in``.
Nr   ©Úothers    r   Ú__contains__ÚIContainer.__contains__f   ó   � r   r   N)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   Ú	Containerr   r6   Ú__static_attributes__r   r   r   r   r   c   s   † Ø
�-‰-€Càñó ór   r   c                   ó,   • \ rS rSr\R
                  rSrg)r"   éo   r   N)r9   r:   r;   r<   r   ÚHashabler>   r   r   r   r"   r"   o   ó   † Ø
�,‰,ƒCr   r"   c                   ó<   • \ rS rSr\R
                  r\S 5       rSrg)r$   és   c                  ó   • g©zq
Optional method. If not provided, the interpreter will
implement `iter` using the old ``__getitem__`` protocol.
Nr   r   r   r   Ú__iter__ÚIIterable.__iter__v   r8   r   r   N)	r9   r:   r;   r<   r   ÚIterabler   rG   r>   r   r   r   r$   r$   s   s   † Ø
�,‰,€Càñó ór   r$   c                   ó,   • \ rS rSr\R
                  rSrg)r%   é~   r   N)r9   r:   r;   r<   r   ÚIteratorr>   r   r   r   r%   r%   ~   rB   r   r%   c                   óV   • \ rS rSr\" SS\R                  5       45      r\S 5       r	Sr
g)r,   é‚   Ú
ReversibleTc                  ó   • g©z‡
Optional method. If this isn't present, the interpreter
will use ``__len__`` and ``__getitem__`` to implement the
`reversed` builtin.
Nr   r   r   r   Ú__reversed__ÚIReversible.__reversed__…   r8   r   r   N)r9   r:   r;   r<   r   r$   ÚgetABCr   r   rR   r>   r   r   r   r,   r,   ‚   s.   † Ù
�l D¨9×+;Ñ+;Ó+=Ð*?Ó
@€Càñó ór   r,   c                   óF   • \ rS rSr\" SS\R                  5       45      rSrg)r!   éŽ   Ú	GeneratorTr   N)	r9   r:   r;   r<   r   r%   rT   r   r>   r   r   r   r!   r!   Ž   s   † á
�k 4¨)×*:Ñ*:Ó*<Ð)>Ó
?ƒCr   r!   c                   ó,   • \ rS rSr\R
                  rSrg)r/   é“   r   N)r9   r:   r;   r<   r   ÚSizedr>   r   r   r   r/   r/   “   s   † Ø
�)‰)ƒCr   r/   c                   ó‚   • \ rS rSr\" SS\R                  5       \R                  5       \R                  5       45      r	Sr
g)r   éš   Ú
CollectionTr   N)r9   r:   r;   r<   r   r/   rT   r$   r   r   r>   r   r   r   r   r   š   s6   † ñ ØØØ	�‰‹˜)×*Ñ*Ó,¨j×.?Ñ.?Ó.AÐBóƒCr   r   c                   óV   • \ rS rSr\R
                  r\4rSr\	S 5       r
\	S 5       rSrg)r-   é¤   r   c                  ó   • grQ   r   r   r   r   rR   ÚISequence.__reversed__­   r8   r   c                  ó   • grF   r   r   r   r   rG   ÚISequence.__iter__µ   r8   r   N)r9   r:   r;   r<   r   ÚSequencer   Úextra_classesÚignored_classesr   rR   rG   r>   r   r   r   r-   r-   ¤   s?   † à
�,‰,€CØ�M€Mð €Oàñó ðð ñó ór   r-   c                   ó2   • \ rS rSr\R
                  r\4rSrg)r*   é½   r   N)	r9   r:   r;   r<   r   ÚMutableSequencer   re   r>   r   r   r   r*   r*   ½   s   † Ø
×
Ñ
€CØ�KƒMr   r*   c                   óP   • \ rS rSrSr\" SS\R                  5       4\\	45      r
Srg)ÚIByteStringéÃ   z'
This unifies `bytes` and `bytearray`.
Ú
ByteStringTr   N)r9   r:   r;   r<   r   r   r-   rT   ÚbytesÚ	bytearrayr   r>   r   r   r   rk   rk   Ã   s-   † ñ	ñ Ø˜$ ×!1Ñ!1Ó!3Ð 5¸¸yÐ7Ió
‹r   rk   c                   ó,   • \ rS rSr\R
                  rSrg)r.   éÌ   r   N)r9   r:   r;   r<   r   ÚSetr>   r   r   r   r.   r.   Ì   s   † Ø
�'‰'ƒCr   r.   c                   ó,   • \ rS rSr\R
                  rSrg)r+   éÐ   r   N)r9   r:   r;   r<   r   Ú
MutableSetr>   r   r   r   r+   r+   Ð   s   † Ø
�.‰.ƒCr   r+   c                   ó8   • \ rS rSr\R
                  r\4r\4r	Sr
g)r'   éÔ   r   N)r9   r:   r;   r<   r   ÚMappingÚdictre   r   rf   r>   r   r   r   r'   r'   Ô   s   † Ø
�+‰+€CØ�G€Mð
 #�nƒOr   r'   c                   ó:   • \ rS rSr\R
                  r\\4r\	4r
Srg)r)   éÞ   r   N)r9   r:   r;   r<   r   ÚMutableMappingry   r   re   r   rf   r>   r   r   r   r)   r)   Þ   s   † Ø
×
Ñ
€CØ˜8Ð%€MØ"�nƒOr   r)   c                   ó,   • \ rS rSr\R
                  rSrg)r(   éä   r   N)r9   r:   r;   r<   r   ÚMappingViewr>   r   r   r   r(   r(   ä   s   † Ø
�/‰/ƒCr   r(   c                   ó,   • \ rS rSr\R
                  rSrg)r#   éè   r   N)r9   r:   r;   r<   r   Ú	ItemsViewr>   r   r   r   r#   r#   è   s   † Ø
�-‰-ƒCr   r#   c                   ó,   • \ rS rSr\R
                  rSrg)r&   éì   r   N)r9   r:   r;   r<   r   ÚKeysViewr>   r   r   r   r&   r&   ì   rB   r   r&   c                   ó<   • \ rS rSr\R
                  r\S 5       rSrg)r0   éð   c                 ó   • g)z’
Optional method. If not provided, the interpreter will use
``__iter__`` or the old ``__len__`` and ``__getitem__`` protocol
to implement ``in``.
Nr   r4   s    r   r6   ÚIValuesView.__contains__ó   r8   r   r   N)	r9   r:   r;   r<   r   Ú
ValuesViewr   r6   r>   r   r   r   r0   r0   ð   s   † Ø
�.‰.€Càñó ór   r0   c                   ó&   • \ rS rSr\" SS5      rSrg)r   éü   Ú	AwaitableTr   N©r9   r:   r;   r<   r   r   r>   r   r   r   r   r   ü   ó   † Ù
�k 4Ó
(ƒCr   r   c                   ó&   • \ rS rSr\" SS5      rSrg)r    é   Ú	CoroutineTr   NrŽ   r   r   r   r    r       r�   r   r    c                   ó&   • \ rS rSr\" SS5      rSrg)r   i  ÚAsyncIterableTr   NrŽ   r   r   r   r   r     ó   † Ù
�o tÓ
,ƒCr   r   c                   ó&   • \ rS rSr\" SS5      rSrg)r   i  ÚAsyncIteratorTr   NrŽ   r   r   r   r   r     r•   r   r   c                   ó&   • \ rS rSr\" SS5      rSrg)r   i  ÚAsyncGeneratorTr   NrŽ   r   r   r   r   r     s   † Ù
Ð&¨Ó
-ƒCr   r   )(r   Úsysr   r   Úcollectionsr   r   r   r   Úzope.interface._compatr	   Úzope.interface.commonr
   r   r   Ú__all__r   r"   r$   r%   r,   r!   r/   r   r-   r*   rk   r.   r+   r'   r)   r(   r#   r&   r0   r   r    r   r   r   r   r   r   Ú<module>rŸ      sv  ðñó* Ý Ý #Ý  Ý  Ý "Ý å 1Ý .Ý *ð #* Ø$&ôò(€ô6	�ô 	ô�ô ô�ô ô�	ô ô	�)ô 	ô@�ô @ô
ˆ\ô ô�&ØØôô�Øôô2 �yô  ö
 ô
�iô 
ôˆ;ô ô�$ô ô%ˆ{ô %ô%�hô %ô�6ô ô�˜tô ô�˜dô ô	�, ô 	ô)�ô )ô)�ô )ô-�\ô -ô-�^ô -ô.�nõ .r   