o
    Ñ­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ÚforeachÚdefmÚdefsetÚdefvarÚfieldÚifÚinr   ÚletÚ
multiclassÚthen)ÚfalseÚtrue)ÚbitÚbitsÚdagÚintÚlistÚstring)2ÚaddÚandÚcastÚconÚcondr&   ÚdivÚemptyÚeqÚexistsÚfilterÚfindÚfoldlr   ÚgeÚ	getdagargÚ
getdagnameÚgetdagopÚgtÚheadr   Ú
interleaveÚisaÚleÚ
listconcatÚ
listremoveÚ	listsplatÚlogtwoÚltÚmulÚneÚnotÚorÚrangeÚreprÚ	setdagargÚ
setdagnameÚsetdagopÚshlÚsizeÚsraÚsrlÚ	strconcatÚsubÚsubstÚsubstrÚtailÚtolowerÚ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\!)Úprefixr]   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([^}]+|\}[^]])*)Úrootr\   rb   r`   ra   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© r|   r|   úU/var/www/html/CropPilot/venv/lib/python3.10/site-packages/pygments/lexers/tablegen.pyr   h   sP    
Ü'

üþþþ
ÇN)rg   Úpygments.lexerr   r   r   r   Úpygments.lexers.c_cppr   Úpygments.tokenr   r   r	   r
   r   r   r   r   r   r   Ú__all__rr   rs   ru   rw   r   r|   r|   r|   r}   Ú<module>   s    
0	5