
                         X    S r SSKJrJrJr  SSKJrJrJrJ	r	J
r
Jr  S/r " S S\5      rg)z
pygments.lexers.yang
~~~~~~~~~~~~~~~~~~~~

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

:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
    )
RegexLexerbygroupswords)TextTokenNameStringCommentNumber	YangLexerc                   6   \ rS rSrSrSrSrS/rS/rS/r	Sr
S	rS
rSrSrSrSrSrSrSrSrS\4S\S4S\S4S\4/S\R.                  4S\R2                  4S\R4                  4S\R8                  4S\R:                  4S\S4S\4S \" \R@                  \R2                  \RB                  5      4S!\RD                  4S"\#RH                  4S#\#RJ                  4\&" \
\S$9\RN                  4\&" \\S$9\RN                  4\&" \\S$9\RN                  4\&" \\S$9\RN                  4\&" \\S$9\RN                  4\&" \\S$9\RN                  4\&" \\S$9\RN                  4\&" \\S$9\RN                  4\&" \\S$9\RP                  4\&" \\S$9\RP                  4S%\RB                  4/S&.r)S'r*g())r      z:
Lexer for YANG, based on RFC7950.

.. versionadded:: 2.7
YANGz$https://tools.ietf.org/html/rfc7950/yangz*.yangzapplication/yang)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\'"]+)rf   root N)+__name__
__module____qualname____firstlineno____doc__nameurlaliases	filenames	mimetypes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__static_attributes__ri       'lib/third_party/pygments/lexers/yang.pyr   r      s/   
 D
0ChG
I#$I 1"W3C,8; 8N
E
 ( wWg&Wf%g	
 T__%))*7H &--0 &--0Wj)  Cdnne&7&7GI :4::F+V\\:#V^^4%.?@%--P.7HI5==Y%.?@%--P)2CDemmT%.?@%--P)2CDemmT%.?@%--P%.?@%--P5!23TZZ@%.?@$**Mdmm,? 
(Fr   N)rn   pygments.lexerr   r   r   pygments.tokenr   r   r   r	   r
   r   __all__r   ri   r   r   <module>r      s-    7 6 E E-W
 Wr   