o
    èã¤g  ã                   @  sH  d Z ddlmZ ddlmZ ddlmZ ddlm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ƒZG dd„ deƒZG dd„ deƒZG dd„ dƒZG dd„ dƒZG dd„ deeƒZG dd„ dƒZG d d!„ d!ƒZG d"d#„ d#ƒZG d$d%„ d%ƒZG d&d'„ d'ƒZG d(d)„ d)ƒZG d*d+„ d+ƒZd,S )-zOClasses used in pickling tests, need to be at the module level for
unpickling.
é    )Úannotationsé   )ÚComparableEntityé   )ÚColumn)ÚStringc                   @  ó   e Zd ZdS )ÚUserN©Ú__name__Ú
__module__Ú__qualname__© r   r   ú_/var/www/html/ecg_monitoring/venv/lib/python3.10/site-packages/sqlalchemy/testing/pickleable.pyr	      ó    r	   c                   @  r   )ÚOrderNr
   r   r   r   r   r      r   r   c                   @  r   )Ú	DingalingNr
   r   r   r   r   r      r   r   c                   @  r   )Ú	EmailUserNr
   r   r   r   r   r   !   r   r   c                   @  r   )ÚAddressNr
   r   r   r   r   r   %   r   r   c                   @  r   )ÚChild1Nr
   r   r   r   r   r   *   r   r   c                   @  r   )ÚChild2Nr
   r   r   r   r   r   .   r   r   c                   @  r   )ÚParentNr
   r   r   r   r   r   2   r   r   c                   @  s   e Zd Zddd„ZdS )ÚScreenNc                 C  ó   || _ || _d S ©N)ÚobjÚparent)Úselfr   r   r   r   r   Ú__init__7   ó   
zScreen.__init__r   ©r   r   r   r   r   r   r   r   r   6   s    r   c                   @  s   e Zd ZeeƒZdS )ÚMixinN)r   r   r   r   r   Úemail_addressr   r   r   r   r!   <   ó    r!   c                   @  r   )ÚAddressWMixinNr
   r   r   r   r   r$   @   r   r$   c                   @  s$   e Zd Zddd„ZejZdd„ ZdS )ÚFooúim stuffc                 C  s   d| _ || _|| _d S )Nzim data©ÚdataÚstuffÚmoredata)r   r*   r)   r   r   r   r   E   s   
zFoo.__init__c                 C  s$   |j | j ko|j| jko|j| jkS r   r'   ©r   Úotherr   r   r   Ú__eq__L   ó
   
ÿ
ýz
Foo.__eq__N)r&   )r   r   r   r   ÚobjectÚ__hash__r-   r   r   r   r   r%   D   s    
r%   c                   @  s*   e Zd Zdd„ ZejZdd„ Zdd„ ZdS )ÚBarc                 C  r   r   ©ÚxÚy©r   r3   r4   r   r   r   r   U   r   zBar.__init__c                 C  ó$   |j | j u o|j| jko|j| jkS r   ©Ú	__class__r3   r4   r+   r   r   r   r-   [   r.   z
Bar.__eq__c                 C  ó   d| j | jf S ©NzBar(%d, %d)r2   ©r   r   r   r   Ú__str__b   ó   zBar.__str__N)r   r   r   r   r/   r0   r-   r<   r   r   r   r   r1   T   s
    r1   c                   @  ó   e Zd Zdd„ Zdd„ ZdS )Ú	OldSchoolc                 C  r   r   r2   r5   r   r   r   r   g   r   zOldSchool.__init__c                 C  r6   r   r7   r+   r   r   r   r-   k   r.   zOldSchool.__eq__N)r   r   r   r   r-   r   r   r   r   r?   f   ó    r?   c                   @  s   e Zd Zdd„ ZdS )ÚOldSchoolWithoutComparec                 C  r   r   r2   r5   r   r   r   r   t   r   z OldSchoolWithoutCompare.__init__Nr    r   r   r   r   rA   s   r#   rA   c                   @  r>   )ÚBarWithoutComparec                 C  r   r   r2   r5   r   r   r   r   z   r   zBarWithoutCompare.__init__c                 C  r9   r:   r2   r;   r   r   r   r<   ~   r=   zBarWithoutCompare.__str__N)r   r   r   r   r<   r   r   r   r   rB   y   r@   rB   c                   @  ó,   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	S )
ÚNotComparablec                 C  ó
   || _ d S r   ©r(   ©r   r(   r   r   r   r   ƒ   ó   
zNotComparable.__init__c                 C  ó   t | ƒS r   ©Úidr;   r   r   r   r0   †   ó   zNotComparable.__hash__c                 C  ó   t S r   ©ÚNotImplementedr+   r   r   r   r-   ‰   ó   zNotComparable.__eq__c                 C  rM   r   rN   r+   r   r   r   Ú__ne__Œ   rP   zNotComparable.__ne__N©r   r   r   r   r0   r-   rQ   r   r   r   r   rD   ‚   ó
    rD   c                   @  rC   )
ÚBrokenComparablec                 C  rE   r   rF   rG   r   r   r   r   ‘   rH   zBrokenComparable.__init__c                 C  rI   r   rJ   r;   r   r   r   r0   ”   rL   zBrokenComparable.__hash__c                 C  ó   t ‚r   ©ÚNotImplementedErrorr+   r   r   r   r-   —   rP   zBrokenComparable.__eq__c                 C  rU   r   rV   r+   r   r   r   rQ   š   rP   zBrokenComparable.__ne__NrR   r   r   r   r   rT      rS   rT   N)Ú__doc__Ú
__future__r   Úentitiesr   Úschemar   Útypesr   r	   r   r   r   r   r   r   r   r   r!   r$   r%   r1   r?   rA   rB   rD   rT   r   r   r   r   Ú<module>   s.   		