o
    Th3  ã                   @   s€   d Z ddlZddlmZmZmZmZmZmZm	Z	m
Z
mZ ddlmZmZmZ dgZg d¢Zdd e¡ d	 ZG d
d„ deƒZdS )zÂ
    pygments.lexers.dns
    ~~~~~~~~~~~~~~~~~~~

    Pygments lexers for DNS

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)	ÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚ
WhitespaceÚLiteral)Ú
RegexLexerÚbygroupsÚincludeÚDnsZoneLexer)ÚINÚCSÚCHÚHSú(ú|ú)c                   @   sÎ  e Zd ZdZejZdZdgZdgZ	dZ
dgZdZdeeejeƒfd	ed
fded
fdejdfded
fde d eeeejeejeejeƒd
fde d eeeejeejeejeƒd
fde d eeeejeejeejeƒd
fde d eeeejeejeejeƒd
fg	dedfdedfedƒgdedfedƒgdeejƒfdefdefded fd!ejfd"eejeƒfd#efgedƒd$efgd%eeejeeeejƒdfd&eeejeƒdfgd'efdedfd(efgd)œZd*d+„ Z d,S )-r   z!
    Lexer for DNS zone file
    ÚZoneÚzonez*.zonez-https://datatracker.ietf.org/doc/html/rfc1035ztext/dnsz2.16z([ \t]*)(;.*)(\n)z^\$ORIGIN\bÚvaluesz^\$TTL\bz^\$INCLUDE\br   z^\$[A-Z]+\bz,^(@)([ \t]+)(?:([0-9]+[smhdw]?)([ \t]+))?(?:z([ 	]+))?([A-Z]+)([ 	]+)z4^([^ \t\n]*)([ \t]+)(?:([0-9]+[smhdw]?)([ \t]+))?(?:z^(Operator)([ \t]+)(?:z4([ 	]+))?(?:([0-9]+[smhdw]?)([ 	]+))?([A-Z]+)([ 	]+)z^([^ \t\n]*)([ \t]+)(?:z\nz#popz\(Únestedúsimple-valuez\)úmultiple-simple-valuesz(;.*)z[ \t]+z@\bú"Ústringz[0-9]+[smhdw]?$z([0-9]+[smhdw]?)([ \t]+)z\S+z[\n]+z9([ \t]+)([^ \t\n]+)([ \t]+)([-\._a-zA-Z]+)([ \t]+)(;.*)?$z([ \t]+)([^ \t\n]+)([ \t\n]+)$z\\"z[^"]+)Úrootr   r   r   r   r   r   c                 C   s
   |   d¡S )Nz$ORIGIN)Ú
startswith)Útext© r!   úT/home/air/segue/gemini/back/venv/lib/python3.10/site-packages/pygments/lexers/dns.pyÚanalyse_textl   s   
zDnsZoneLexer.analyse_textN)!Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚreÚ	MULTILINEÚflagsÚnameÚaliasesÚ	filenamesÚurlÚ	mimetypesÚversion_addedr   r	   r   ÚSingler   ÚPreprocÚ
CLASSES_REr   r   ÚIntegerr   ÚClassÚTyper   r   r   r
   ÚPreprocFileÚtokensr#   r!   r!   r!   r"   r      sx    

þ
þ
þ
þëýþù
þÿýýÈ?)r'   r(   Úpygments.tokenr   r   r   r   r   r   r   r	   r
   Úpygments.lexerr   r   r   Ú__all__ÚCLASSESÚjoinr3   r   r!   r!   r!   r"   Ú<module>   s    
,