o
    2³cR
  ã                   @   s”   d Z ddlZG dd„ dejƒZG dd„ dejƒZdd„ Zd	d
„ Zdd„ Zdd„ Zdd„ Z	dd„ Z
ejZejZejZejZejZejZejZejZdS )zDNS Message Flags.é    Nc                   @   s(   e Zd ZdZdZdZdZdZdZdZ	dS )	ÚFlagé €  i   i   é   é€   é    é   N)
Ú__name__Ú
__module__Ú__qualname__ÚQRÚAAÚTCÚRDÚRAÚADÚCD© r   r   ú?/var/www/html/gps/gps/lib/python3.10/site-packages/dns/flags.pyr      s    r   c                   @   s   e Zd ZdZdS )ÚEDNSFlagr   N)r   r	   r
   ÚDOr   r   r   r   r   +   s    r   c                 C   s*   d}|   ¡ }|D ]
}||| ¡  O }q|S )Nr   )ÚsplitÚupper)ÚtextÚ
enum_classÚflagsÚtokensÚtr   r   r   Ú
_from_text0   s
   r   c                 C   s8   g }|j  ¡ D ]\}}| |@ dkr| |¡ qd |¡S )Nr   ú )Ú__members__ÚitemsÚappendÚjoin)r   r   Ú
text_flagsÚkÚvr   r   r   Ú_to_text8   s   
€
r&   c                 C   ó
   t | tƒS )zgConvert a space-separated list of flag text values into a flags
    value.

    Returns an ``int``
    )r   r   ©r   r   r   r   Ú	from_text@   ó   
r)   c                 C   r'   )zgConvert a flags value into a space-separated list of flag text
    values.

    Returns a ``str``.
    )r&   r   ©r   r   r   r   Úto_textJ   r*   r,   c                 C   r'   )zqConvert a space-separated list of EDNS flag text values into a EDNS
    flags value.

    Returns an ``int``
    )r   r   r(   r   r   r   Úedns_from_textT   r*   r-   c                 C   r'   )zrConvert an EDNS flags value into a space-separated list of EDNS flag
    text values.

    Returns a ``str``.
    )r&   r   r+   r   r   r   Úedns_to_text^   r*   r.   )Ú__doc__ÚenumÚIntFlagr   r   r   r&   r)   r,   r-   r.   r   r   r   r   r   r   r   r   r   r   r   r   Ú<module>   s$   



