ó
    Ï›‘hŒ"  ã                   óÀ   • S 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g)zInterface-specific exceptions
)ÚInvalidÚDoesNotImplementÚBrokenImplementationÚBrokenMethodImplementationÚMultipleInvalidÚBadImplementsÚInvalidInterfacec                   ó   • \ rS rSrSrSrg)r   é   z A specification is violated
    © N©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú__static_attributes__r   ó    Ú]C:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\zope/interface/exceptions.pyr   r      ó   † ôr   r   c                   ó€   • \ rS rSrSrSr\rSrSS jr	\
S 5       r\
S 5       r\
S	 5       r\
S
 5       rSrSrSrS rSrg)Ú_TargetInvalidé#   é    é   z<Not Given>Nc                 óR   •  U R                   U   $ ! U R                   a    Us $ f = f©N)ÚargsÚ_NOT_GIVEN_CATCH)ÚselfÚixÚdefaults      r   Ú_get_arg_or_defaultÚ"_TargetInvalid._get_arg_or_default9   s/   € ð	Ø—9‘9˜R‘=Ð øØ×$Ñ$ó 	ØŠNð	ús   ‚ ‘&¥&c                 ó8   • U R                  U R                  5      $ r   )r"   Ú_IX_INTERFACE©r   s    r   Ú	interfaceÚ_TargetInvalid.interface?   s   € à×'Ñ'¨×(:Ñ(:Ó;Ð;r   c                 óN   • U R                  U R                  U R                  5      $ r   )r"   Ú
_IX_TARGETÚ
_NOT_GIVENr&   s    r   ÚtargetÚ_TargetInvalid.targetC   s   € à×'Ñ'¨¯©¸¿¹ÓIÐIr   c                 óD   • U R                   nXR                  L a  gSU< 3$ )Nz	An objectzThe object )r,   r+   )r   r,   s     r   Ú_str_subjectÚ_TargetInvalid._str_subject[   s%   € à—‘ˆØ—_‘_Ò$ØØ˜V™JÐ'Ð'r   c                 ó2   • SU R                   =(       d    S-  $ )Nz$has failed to implement interface %sz	<Unknown>)r'   r&   s    r   Ú_str_descriptionÚ_TargetInvalid._str_descriptionb   s   € à5Ø�N‰N×)˜kñ
ð 	
r   z: z	<unknown>Ú.c                 ó�   • SR                  U R                  U R                  U R                  U R                  U R
                  5      $ )Nz{} {}{}{}{})Úformatr/   r2   Ú_str_conjunctionÚ_str_detailsÚ_str_trailerr&   s    r   Ú__str__Ú_TargetInvalid.__str__l   sB   € Ø×#Ñ#Ø×ÑØ×!Ñ!Ø×!Ñ!Ø×ÑØ×Ñó
ð 	
r   r   r   )r   r   r   r   r%   r*   Ú
IndexErrorr   r+   r"   Úpropertyr'   r,   r/   r2   r7   r8   r9   r:   r   r   r   r   r   r   #   s‰   † ð €MØ€Jð "ÐØ€Jôð ñ<ó ð<ð ñJó ðJð. ñ(ó ð(ð ñ
ó ð
ð
 ÐØ€LØ€Lõ
r   r   c                   ó   • \ rS rSrSrSrSrg)r   év   zð
DoesNotImplement(interface[, target])

The *target* (optional) does not implement the *interface*.

.. versionchanged:: 5.0.0
   Add the *target* argument and attribute, and change the resulting
   string value of this object accordingly.
z.Does not declaratively implement the interfacer   N)r   r   r   r   r   r8   r   r   r   r   r   r   v   s   † ñð DƒLr   r   c                   ó`   • \ rS rSrSr\R                  S-   r\S-   r\	S 5       r
\	S 5       rSrg)r   é„   a?  
BrokenImplementation(interface, name[, target])

The *target* (optional) is missing the attribute *name*.

.. versionchanged:: 5.0.0
   Add the *target* argument and attribute, and change the resulting
   string value of this object accordingly.

   The *name* can either be a simple string or a ``Attribute`` object.
r   c                 ó    • U R                   S   $ ©Nr   ©r   r&   s    r   ÚnameÚBrokenImplementation.name”   ó   € à�y‰y˜‰|Ðr   c                 óŒ   • S[        U R                  [        5      (       a  [        U R                  5      -  $ U R                  -  $ )Nz!The %s attribute was not provided)Ú
isinstancerE   ÚstrÚreprr&   s    r   r8   Ú!BrokenImplementation._str_details˜   s;   € à2Ü)¨$¯)©)´S×9Ñ9ŒD�—‘‹Oñ
ð 	
Ø?C¿y¹yñ
ð 	
r   r   N)r   r   r   r   r   r   r%   Ú_IX_NAMEr*   r=   rE   r8   r   r   r   r   r   r   „   sH   † ñ
ð ×+Ñ+¨aÑ/€HØ˜A‘€Jàñó ðð ñ
ó ó
r   r   c                   óp   • \ rS rSrSrSr\S-   r\S-   r\S 5       r	\S 5       r
\S 5       r\S 5       rS	rg
)r   éŸ   aw  
BrokenMethodImplementation(
    method, message[, implementation, interface, target]
)

The *target* (optional) has a *method* in *implementation* that violates
its contract in a way described by *mess*.

.. versionchanged:: 5.0.0
   Add the *interface* and *target* argument and attribute,
   and change the resulting string value of this object accordingly.

   The *method* can either be a simple string or a ``Method`` object.

.. versionchanged:: 5.0.0
   If *implementation* is given, then the *message* will have the
   string "implementation" replaced with an short but informative
   representation of *implementation*.

é   r   c                 ó    • U R                   S   $ ©Nr   rD   r&   s    r   ÚmethodÚ!BrokenMethodImplementation.method¹   rG   r   c                 ó    • U R                   S   $ rC   rD   r&   s    r   ÚmessÚBrokenMethodImplementation.mess½   rG   r   c                 ó:  • SS K n UR                  n[        n U" U 5      n U R                  nXC" U5      -   $ ! [         a    UR                  nUR
                  n NDf = f! [        [        4 a    [        U 5      s $ f = f! [         a    U R                  n Nkf = frR   )ÚinspectÚ	signaturerJ   ÚAttributeErrorÚ
getargspecÚformatargspecÚ
ValueErrorÚ	TypeErrorrK   r   r   )ÚimplrY   ÚsigÚ	formatsigrE   s        r   Ú__implementation_strÚ/BrokenMethodImplementation.__implementation_strÁ   s¬   € ó 	ð	.Ø×#Ñ#ˆCÜˆIð
	Ù�d“)ˆCð	!Ø×$Ñ$ˆDð �i “nÑ$Ð$øô% ó 	.Ø×$Ñ$ˆCØ×-Ñ-ŠIð	.ûô œIÐ&ó 	ô
 ˜“:Òð	ûô ó 	!Ø—=‘=ŠDð	!ús1   †8 ™A  ¢B ¸"AÁAÁ A>Á=A>ÂBÂBc                 ó„  • U R                  U R                  U R                  5      nU R                  nXR                  La,  SU;   a&  UR	                  SS5      nX R                  U5      4-  nSR                  [        U R                  [        5      (       a  [        U R                  5      U5      $ U R                  U5      $ )NÚimplementationz%rz)The contract of {} is violated because {})r"   Ú_IX_IMPLr+   rV   ÚreplaceÚ/_BrokenMethodImplementation__implementation_strr6   rI   rS   rJ   rK   )r   r`   Úmessages      r   r8   Ú'BrokenMethodImplementation._str_detailsÝ   s¤   € à×'Ñ'¨¯©°t·±ÓGˆØ—)‘)ˆØ—‘Ò&Ð+;¸wÓ+FØ—o‘oÐ&6¸Ó=ˆGØ×!:Ñ!:¸4Ó!@Ð BÑBˆGà:×AÑAÜ!+¨D¯K©K¼×!=Ñ!=ŒD�—‘ÓØó
ð 	
ØCGÇ;Á;Øó
ð 	
r   r   N)r   r   r   r   r   rg   r%   r*   r=   rS   rV   Ústaticmethodri   r8   r   r   r   r   r   r   Ÿ   so   † ñð* €HØ˜q‘L€MØ Ñ"€Jàñó ðð ñó ðð ñ%ó ð%ð6 ñ

ó ó

r   r   c                   óX   ^ • \ rS rSrSrSrU 4S jr\S 5       r\S 5       r	Sr
SrSrU =r$ )	r   éë   z·
The *target* has failed to implement the *interface* in
multiple ways.

The failures are described by *exceptions*, a collection of
other `Invalid` instances.

.. versionadded:: 5.0
r   c                 ó8   >• [         TU ]  X[        U5      5        g r   )ÚsuperÚ__init__Útuple)r   r'   r,   Ú
exceptionsÚ	__class__s       €r   rq   ÚMultipleInvalid.__init__ø   s   ø€ Ü‰Ñ˜¬E°*Ó,=Õ>r   c                 ó    • U R                   S   $ )NrP   rD   r&   s    r   rs   ÚMultipleInvalid.exceptionsû   rG   r   c                 óL   • SSR                  S U R                   5       5      -   $ )Nz
    c              3   ó–   #   • U  H?  n[        U[        5      (       a  UR                  R                  5       O
[	        U5      v •  MA     g 7fr   )rI   r   r8   ÚstriprJ   )Ú.0Úxs     r   Ú	<genexpr>Ú/MultipleInvalid._str_details.<locals>.<genexpr>  s9   é € ð (
â$�ô '1°´N×&CÑ&CˆA�N‰N× Ñ Ô"ÌÈQËÔOÚ$ùs   ‚AA	)Újoinrs   r&   s    r   r8   ÚMultipleInvalid._str_detailsÿ   s-   € ð ˜(Ÿ-™-ñ (
à—_’_ó(
ó 
ñ 
ð 	
r   Ú:Ú )r   r   r   r   r   r   rq   r=   rs   r8   r7   r9   r   Ú__classcell__)rt   s   @r   r   r   ë   sJ   ø† ñð Ðõ?ð ñó ðð ñ
ó ð
ð ÐØ†Lr   r   c                   ó   • \ rS rSrSrSrg)r   i  z'The interface has invalid contents
    r   Nr   r   r   r   r   r     r   r   r   c                   ó   • \ rS rSrSrSrg)r   i  z‚An implementation assertion is invalid

because it doesn't contain an interface or a sequence of valid
implementation assertions.
r   Nr   r   r   r   r   r     s   † ôr   r   N)r   Ú__all__Ú	Exceptionr   r   r   r   r   r   r   r_   r   r   r   r   Ú<module>rˆ      sz   ðñò
€ôˆiô ô
P
�Wô P
ôfD�~ô Dô
˜>ô 
ô6I
 ô I
ôX�nô ôB�yô ô
�Iõ r   