
    Mh                     `    d Z ddlmZmZmZ ddlmZmZmZm	Z	m
Z
mZ dgZ G d de          ZdS )z
    pygments.lexers.yang
    ~~~~~~~~~~~~~~~~~~~~

    Lexer for the YANG 1.1 modeling language. See :rfc:`7950`.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroupswords)TextTokenNameStringCommentNumber	YangLexerc                      e Zd ZdZdZdZdgZdgZdgZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdefdedfdedfdefgdej        fdej        fdej        fdej        fdej        fdedfdefd  eej         ej        ej!                  fd!ej"        fd"e#j$        fd#e#j%        f e&e
e$          ej'        f e&ee$          ej'        f e&ee$          ej'        f e&ee$          ej'        f e&ee$          ej'        f e&ee$          ej'        f e&ee$          ej'        f e&ee$          ej'        f e&ee$          ej(        f e&ee$          ej(        fd%ej!        fgd&Z)d'S )(r   z+
    Lexer for YANG, based on RFC7950.
    YANGz$https://tools.ietf.org/html/rfc7950/yangz*.yangzapplication/yangz2.7)module	submodule)z
belongs-to	namespaceprefixzyang-version)contactdescriptionorganization	referencerevision)importincludezrevision-date)actionargumentaugment	deviation	extensionfeaturegroupingidentityz
if-featureinputnotificationoutputrpctypedef)anydataanyxmlcasechoiceconfig	containerdeviateleafz	leaf-listlistmustpresencerefineuseswhen)basebitdefaultenumzerror-app-tagzerror-messagezfraction-digitslengthzmax-elementszmin-elementsmodifierz
ordered-bypathpatternpositionrangezrequire-instancestatustypeunitsvaluezyin-element)key	mandatoryunique)addcurrentdelete
deprecatedfalsezinvert-matchmaxminznot-supportedobsoletereplacetrue	unboundeduser)binarybitsboolean	decimal64emptyenumerationidentityrefzinstance-identifierint16int32int64int8leafrefstringuint16uint32uint64uint8unionz(?=[^\w\-:])z[^*/]z/\*z#pushz\*/z#popz[*/]z\s+z[{};]+z'(?<![\-\w])(and|or|not|\+|\.)(?![\-\w])z"(?:\\"|[^"])*?"z'(?:\\'|[^'])*?'commentsz//.*?$z2(?:^|(?<=[\s{};]))([\w.-]+)(:)([\w.-]+)(?=[\s{};])z)([0-9]{4}\-[0-9]{2}\-[0-9]{2})(?=[\s{};])z([0-9]+\.[0-9]+)(?=[\s{};])z([0-9]+)(?=[\s{};]))suffixz[^;{}\s\'"]+)re   rootN)*__name__
__module____qualname____doc__nameurlaliases	filenames	mimetypesversion_addedTOP_STMTS_KEYWORDSMODULE_HEADER_STMT_KEYWORDSMETA_STMT_KEYWORDSLINKAGE_STMTS_KEYWORDSBODY_STMT_KEYWORDSDATA_DEF_STMT_KEYWORDSTYPE_STMT_KEYWORDSLIST_STMT_KEYWORDSCONSTANTS_KEYWORDSTYPESsuffix_re_patternr
   r   
Whitespacer   PunctuationOperatorr	   DoubleSingler   r   	NamespaceVariableLabelr   FloatIntegerr   KeywordClasstokens     T/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pygments/lexers/yang.pyr   r      sq         D
0ChG
I#$IM 1"W3C,8; 8N
E
 ( wWg&Wf%g	
 T_%)*7H &-0 &-0Wj)  CXdne&7GGI :4:F+V\:#V^4U%.?@@@%-PU.7HIII5=YU%.?@@@%-PU)2CDDDemTU%.?@@@%-PU)2CDDDemTU%.?@@@%-PU%.?@@@%-PU5!2333TZ@U%.?@@@$*Mdm,? 
( (FFFr   N)rk   pygments.lexerr   r   r   pygments.tokenr   r   r   r	   r
   r   __all__r   r   r   r   <module>r      s     7 6 6 6 6 6 6 6 6 6 E E E E E E E E E E E E E E E E-V V V V V
 V V V V Vr   