o
    i3                     @   s   d dl Z d dlmZ d dlmZmZmZ d dlmZ de	de
fddZde	de
fd	d
Zde	de
fddZde	de
fddZde	de
fddZdee	e	f de	de	fddZdS )    N)Dict)PERIOD_PREFIXTIME_PREFIXWEEK_PREFIX)OutOfDesignatorschreturnc                 C      | t kS N)r   r    r   R/var/www/edux/Edux_v2/venv/lib/python3.10/site-packages/isoduration/parser/util.py	is_period      r   c                 C   r	   r
   )r   r   r   r   r   is_time   r   r   c                 C   r	   r
   )r   r   r   r   r   is_week   r   r   c                 C   s   t td| S )Nz[+\-0-9.,eE])boolrematchr   r   r   r   	is_number   s   r   c                 C   s   |   o	|  dkS )Ne)isalphalowerr   r   r   r   	is_letter   s   r   designatorstargetc              
   C   sD   	 z
| j dd\}}W n ty } zt|d }~ww ||kr!|S q)NTF)last)popitemKeyErrorr   )r   r   keyvalueexcr   r   r   parse_designator   s   r"   )r   typingr   isoduration.constantsr   r   r   isoduration.parser.exceptionsr   strr   r   r   r   r   r   r"   r   r   r   r   <module>   s    "