a
    ñ»j¬  ã                   @   s‚   d Z ddlmZmZmZmZ ddlmZ ddlm	Z	m
Z
mZmZmZmZmZmZmZmZ dgZdZdZdZd	ZG d
d„ deƒZdS )zÖ
    pygments.lexers.tablegen
    ~~~~~~~~~~~~~~~~~~~~~~~~

    Lexer for LLVM's TableGen DSL.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    )Ú
RegexLexerÚincludeÚwordsÚusing)ÚCppLexer)
ÚCommentÚKeywordÚNameÚNumberÚOperatorÚPunctuationÚStringÚTextÚ
WhitespaceÚErrorÚTableGenLexer)ÚassertÚclassÚcodeÚdefÚdumpÚelseÚforeachZdefmZdefsetZdefvarÚfieldÚifÚinr   ZletZ
multiclassZthen)ÚfalseÚtrue)ÚbitÚbitsÚdagÚintÚlistÚstring)2ÚaddÚandÚcastÚconZcondr    ÚdivÚemptyÚeqÚexistsÚfilterÚfindZfoldlr   ÚgeZ	getdagargZ
getdagnameZgetdagopÚgtÚheadr   Ú
interleaveZisaÚleZ
listconcatZ
listremoveZ	listsplatZlogtwoÚltÚmulÚneÚnotÚorÚrangeÚreprZ	setdagargZ
setdagnameZsetdagopZshlÚsizeÚsraZsrlZ	strconcatÚsubÚsubstÚsubstrÚtailÚtolowerZtoupperÚxorc                   @   s.  e Zd ZdZdZdZddgZdgZdZde	fd	e
jd
fde
jfde
jfdejfdejfeedd�efeedd�ejfeedd�ejfeeddd�efdefdefdejfdejfdedfdedfdefgde
jfd	e
jdfde
jdfd e
jfgd!ej fd"efgdedfe!d#ƒgd$e"dfd%e#e$ƒdfgd&œZ%d'S )(r   z
    Lexer for TableGen
    ÚTableGenz+https://llvm.org/docs/TableGen/ProgRef.htmlÚtablegenÚtdz*.tdz2.19z\s+z/\*Úcommentz//.*?$z!#(define|ifdef|ifndef|else|endif)z0b[10]+z0x[0-9a-fA-F]+z\b)Úsuffixz\!)ÚprefixrF   z
![a-zA-Z]+z[0-9]*[a-zA-Z_][a-zA-Z_0-9]*z\$[a-zA-Z_][a-zA-Z_0-9]*z[-\+]?[0-9]+ú"Údqsz\[\{Ú	codeblockz[-+\[\]{}()<>\.,;:=?#]+z[^*/]+z#pushz\*/z#popz[*/]z\\[\\\'"tn]z[^\\"]+Ústringsz\}\]z([^}]+|\}[^]])*)ÚrootrE   rK   rI   rJ   N)&Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚversion_addedr   r   Ú	MultilineÚSingleÚPreprocr
   ÚBinÚHexr   ÚKEYWORDSr   ÚKEYWORDS_CONSTÚConstantÚKEYWORDS_TYPEÚTypeÚBANG_OPERATORSr   r   r	   ÚVariableÚIntegerr   r   ÚEscaper   r   r   r   Útokens© re   re   ú>E:\soccer\ml_env\Lib\site-packages\pygments/lexers/tablegen.pyr   h   sN   
Ü'

üþþþÇN)rP   Zpygments.lexerr   r   r   r   Zpygments.lexers.c_cppr   Zpygments.tokenr   r   r	   r
   r   r   r   r   r   r   Ú__all__r[   r\   r^   r`   r   re   re   re   rf   Ú<module>   s   
0	5