
    |e                         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
 ddlmZmZmZ dgZg dZg dZdd	gZg d
Zg dZg dZg dZd Z G d de      Zy)z
    pygments.lexers.asn1
    ~~~~~~~~~~~~~~~~~~~~

    Pygments lexers for ASN.1.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    N)CommentOperatorKeywordNameStringNumberPunctuation
Whitespace)
RegexLexerwordsbygroups	Asn1Lexer)ENCODEDzABSTRACT-SYNTAXENDAPPLICATIONEXPLICITIMPLICIT	AUTOMATICTAGSBEGINEXTENSIBILITYBYFROM	COMPONENT	UNIVERSAL
COMPONENTSCONSTRAINEDIMPLIEDDEFINITIONSINCLUDESPRIVATEWITHOF)EXCEPTUNIONINTERSECTIONEXPORTSIMPORTS)zSEQUENCE OFzSET OFzINSTANCE OFzWITH SYNTAX)SIZESEQUENCESETCLASSUNIQUEDEFAULTCHOICEPATTERNOPTIONALPRESENTABSENT
CONTAINING
ENUMERATEDALL)zOBJECT IDENTIFIERz
BIT STRINGzOCTET STRINGzCHARACTER STRINGzEMBEDDED PDV)zRELATIVE-OIDzTYPE-IDENTIFIERObjectDescriptor	IA5StringINTEGERISO646String	T61String	BMPStringNumericStringTeletexStringGeneralizedTimeREALBOOLEANGeneralStringGraphicStringUniversalStringUTCTimeVisibleString
UTF8StringPrintableStringVideotexStringEXTERNALc                 >    ddj                  d | D              z   dz   S )N(|c              3   @   K   | ]  }|j                  d d        yw) \s+N)replace).0tokens     6/usr/lib/python3/dist-packages/pygments/lexers/asn1.py	<genexpr>z!word_sequences.<locals>.<genexpr>r   s     I%--V4Is   z)\b)join)tokenss    rT   word_sequencesrX   q   s!    I&IIIFRR    c                      e Zd ZdZej
                  ZdZdgZdgZ	dZ
defdej                  fdej                  d	fd
ej                   fdej"                  fdej&                  f edd      ej,                  f ee      ej2                  f eed      ej2                  fdej6                  f eed      ej6                  f ee      ej>                  f ee d      ej>                  f ee!d      ejD                  f ee#      efdej2                  fdefde$fde%dfd e&e%e%jN                        fd e&e%e%jN                        fgdej                  fdej                  dfdej                  dfdej                  fgde%fde%dfde%fgdZ(y )!r   zG
    Lexer for ASN.1 module definition

    .. versionadded:: 2.16
    zASN.1asn1z*.asn1zDhttps://www.itu.int/ITU-T/studygroups/com17/languages/X.680-0207.pdfrP   z--.*$z/\*commentz\d+\.\d*([eE][-+]?\d+)?z\d+z!&?[a-z][-a-zA-Z0-9]*[a-zA-Z0-9]\b)TRUEFALSENULLzMINUS-INFINITYzPLUS-INFINITYMINMAXz\b)suffixzEXPORTS\s+ALL\bz!&?[A-Z][-a-zA-Z0-9]*[a-zA-Z0-9]\bz!(::=|\.\.\.|\.\.|\[\[|\]\]|\||\^)z(\.|,|\{|\}|\(|\)|\[|\])"stringz('[01 ]*')(B)\bz('[0-9A-F ]*')(H)\bz[^*/]+z#pushz\*/z#popz[*/]z""z[^"])rootr\   rd   N))__name__
__module____qualname____doc__re	MULTILINEflagsnamealiases	filenamesurlr
   r   Single	Multiliner   FloatIntegerr   Variabler   r   ConstantrX   TWO_WORDS_TYPESTypeSINGLE_WORD_TYPES	NamespaceSINGLE_WORD_NAMESPACE_KEYWORDSr   MULTI_WORDS_DECLARATIONSDeclarationSINGLE_WORDS_DECLARATIONSOPERATOR_WORDSWordSINGLE_WORD_KEYWORDSr	   r   r   AffixrW    rY   rT   r   r   u   s    LLEDhG
I
PC
 Z w~~&W&&	2'6V^^$14==A]fklnun~n~O,gll;$U3W\\B!2!231%@(BTBTU45w7J7JK,U;W=P=PQ>%0(--@'('21499=18<(+668$&&,,!?@#HVV\\$BCC"
H ))*W&&0W&&/g''(	
 FO66"f
U/FrY   )ri   rj   pygments.tokenr   r   r   r   r   r   r	   r
   pygments.lexerr   r   r   __all__r   r   r{   r|   r~   rw   ry   rX   r   r   rY   rT   <module>r      s{    
$ $ $ 6 6- 2 " 
  " 4S>
 >rY   