U
    <æ{fd  ã                   @   s6   d Z ddlmZ ddlZeeeeef dœdd„ZdS )zDNS GENERATE range conversion.é    )ÚTupleN)ÚtextÚreturnc                 C   s  d}d}d}d}d}| r0| d dkr0t j d¡‚| D ]b}|dkrZ|dkrZt|ƒ}d}d}q4|dkrtt|ƒ}d}d}q4| ¡ r†||7 }q4t j d	| ¡‚q4|dkr®t j d
¡‚n&|dkrÀt|ƒ}n|dksÌt‚t|ƒ}|dksàt‚|dksìt‚||krt j d¡‚|||fS )zÜConvert the text form of a range in a ``$GENERATE`` statement to an
    integer.

    *text*, a ``str``, the textual range in ``$GENERATE`` form.

    Returns a tuple of three ``int`` values ``(start, stop, step)``.
    éÿÿÿÿé   Ú r   ú-z!Start cannot be a negative numberú/é   zCould not parse %szno stop value specifiedzstart must be <= stop)ÚdnsÚ	exceptionÚSyntaxErrorÚintÚisdigitÚAssertionError)r   ÚstartÚstopÚstepÚcurÚstateÚc© r   úI/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/dns/grange.pyÚ	from_text   s<    	


r   )Ú__doc__Útypingr   r   Ústrr   r   r   r   r   r   Ú<module>   s   