o
    4[b‘	  ã                
   @   s¶   d Z ddlZddlZddlmZ ddddœd	ed
ededefdd„ZG dd„ dƒZG dd„ deƒZ	G dd„ deƒZ
e ¡ dd„ ƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZdS )z=This module has components that use Python 3 specific syntax.é    N)ÚTupleé
   é   é   é(   )Úarg8Úarg9Úarg2Úarg4Úarg7r   c          
   
   O   s   | |||||||||	f
S ©N© )
Úarg1r	   Zarg3r
   Zarg6r   r   r   Zarg5Zarg10r   r   úHD:\Projects\ConvertPro\env\Lib\site-packages\fire\test_components_py3.pyÚidentity   s   r   c                   @   s   e Zd Zddœdd„ZdS )ÚHelpTextComponentÚ0)Úbetac                C   s   ||fS r   r   )ÚselfÚalphar   r   r   r   r      ó   zHelpTextComponent.identityN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r      s    r   c                   @   s*   e Zd Zdd„ Zdd„ Zddœdd„Zd	S )
ÚKeywordOnlyc                C   ó   |d S ©Né   r   ©r   Úcountr   r   r   Údouble$   r   zKeywordOnly.doublec                C   r   )Né   r   r   r   r   r   Útriple'   r   zKeywordOnly.tripleÚx)r#   c                C   s   t d| ƒ d S )Nzx: )Úprint)r   r#   r   r   r   Úwith_default*   ó   zKeywordOnly.with_defaultN)r   r   r   r    r"   r%   r   r   r   r   r   "   s    r   c                   @   s   e Zd Ze ¡ dd„ ƒZdS )ÚLruCacheDecoratedMethodc                 C   ó   |S r   r   )r   r   r   r   r   Úlru_cache_in_class0   ó   z*LruCacheDecoratedMethod.lru_cache_in_classN)r   r   r   Ú	functoolsÚ	lru_cacher)   r   r   r   r   r'   .   s    r'   c                 C   s   | S r   r   )r   r   r   r   Úlru_cache_decorated5   r*   r-   c                   @   s   e Zd Zejddd„ƒZdS )ÚWithAsyncior   c                 C   ó   d| S r   r   r   r   r   r   r    <   s   zWithAsyncio.doubleN©r   )r   r   r   ÚasyncioÚ	coroutiner    r   r   r   r   r.   :   s    r.   c                   @   s`   e Zd ZdZdedefdd„Zdeeeeeeeeeeeee            fdd„Zd	S )
Ú	WithTypesú;Class with functions that have default arguments and types.r   Úreturnc                 C   r/   ©zŸReturns the input multiplied by 2.

    Args:
      count: Input number that you want to double.

    Returns:
      A number that is the double of count.
    r   r   r   r   r   r   r    D   ó   	zWithTypes.doubleÚlong_objc                 C   r(   r   r   )r   r8   r   r   r   Ú	long_typeO   s   zWithTypes.long_typeN)	r   r   r   Ú__doc__Úfloatr    r   Úintr9   r   r   r   r   r3   A   s    ÿþr3   c                   @   s4   e Zd ZdZddedefdd„Zddefd	d
„ZdS )ÚWithDefaultsAndTypesr4   r   r   r5   c                 C   r/   r6   r   r   r   r   r   r    Z   r7   zWithDefaultsAndTypes.doubleNÚvaluec                 C   s   |d u rdS |S )Nr   r   )r   r>   r   r   r   Úget_inte   r&   zWithDefaultsAndTypes.get_intr0   r   )r   r   r   r:   r;   r    r<   r?   r   r   r   r   r=   W   s    r=   )r   r   )r:   r1   r+   Útypingr   r<   r   r   Úobjectr   r'   r,   r-   r.   r3   r=   r   r   r   r   Ú<module>   s&   ÿÿ
ÿ
