a
    $ühPæ	  ã                   @   sT   d dl Z G dd„ dƒZdd„ Zdd„ Zd dlZedkrPG d	d
„ d
ejƒZe ¡  dS )é    Nc                   @   sL   e Z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 )Úv4_tc                 C   s   |d@ | _ d S )Né   ©Úcode)ÚselfZargcode© r   úO/homepages/25/d321765456/htdocs/pub_http_internet/grad-school/src/sack/v4_tm.pyÚ__init__   s    zv4_t.__init__c                 C   s   | j |j kS ©Nr   ©ÚaÚbr   r   r   Ú__eq__!   s    zv4_t.__eq__c                 C   s
   | |k S r
   r   r   r   r   r   Ú__ne__$   s    zv4_t.__ne__c                 C   s   t | j|jA ƒ}|S r
   ©r   r   )r   r   Úcr   r   r   Ú__mul__'   s    zv4_t.__mul__c                 C   s   t | jƒ}|S r
   r   )r   r   r   r   r   Úinv,   s    
zv4_t.invc                 C   sX   |dkr|   d¡ n@|dkr(|   d¡ n,|dkr<|   d¡ n|dkrP|   d¡ nt‚d S )	NÚer   r   é   r   é   r   r   )r	   ÚIOError)r   Zstringr   r   r   Úscan0   s    z	v4_t.scanc                 C   s@   | j dkrdS | j dkrdS | j dkr*dS | j dkr8dS t‚d S )	Nr   r   r   r   r   r   r   r   )r   r   ©r   r   r   r   Ú__str__<   s    



zv4_t.__str__c                 C   s   |   ¡ S r
   )r   r   r   r   r   Ú__repr__H   s    zv4_t.__repr__N)Ú__name__Ú
__module__Ú__qualname__r	   r   r   r   r   r   r   r   r   r   r   r   r      s   r   c                 C   s   dS ©Nr   r   )Úparams_stringr   r   r   Úparams_from_stringK   s    r!   c                 C   s   t |ƒ}tdƒ}| | ¡ |S r   )r!   r   r   )Zvalue_stringr    Únot_usedÚobjr   r   r   Úfrom_stringN   s    
r$   Ú__main__c                   @   s\   e Z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 )Ú
test_casesc                 C   s   d S r
   r   r   r   r   r   Útest___init__l   s    ztest_cases.test___init__c                 C   s   d S r
   r   r   r   r   r   Útest___eq__o   s    ztest_cases.test___eq__c                 C   s   d S r
   r   r   r   r   r   Útest___ne__r   s    ztest_cases.test___ne__c                 C   s   d S r
   r   r   r   r   r   Útest___mul__u   s    ztest_cases.test___mul__c                 C   s   d S r
   r   r   r   r   r   Útest_invx   s    ztest_cases.test_invc                 C   s   d S r
   r   r   r   r   r   Ú	test_scan{   s    ztest_cases.test_scanc                 C   s   d S r
   r   r   r   r   r   Útest___str__~   s    ztest_cases.test___str__c                 C   s   d S r
   r   r   r   r   r   Útest___repr__   s    ztest_cases.test___repr__c                 C   s   d S r
   r   r   r   r   r   Útest_params_from_string„   s    z"test_cases.test_params_from_stringc                 C   s   d S r
   r   r   r   r   r   Útest_from_string‡   s    ztest_cases.test_from_stringN)r   r   r   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r   r   r   r   r&   k   s   r&   )	Úrer   r!   r$   Zunittestr   ZTestCaser&   Úmainr   r   r   r   Ú<module>   s   0 