o
    3Ih%                     @   sj   d Z ddlmZmZmZmZmZmZ ddlm	Z	m
Z
mZmZmZmZmZmZmZ dgZG dd deZdS )z
    pygments.lexers.felix
    ~~~~~~~~~~~~~~~~~~~~~

    Lexer for the Felix language.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerincludebygroupsdefaultwordscombined)	TextCommentOperatorKeywordNameStringNumberPunctuation
Whitespace
FelixLexerc                #   @   s<  e Zd ZdZdZdZddgZd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i dededddedfedddedfded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ejfeeddejfeddejfd ejfd!ejfd"e ejfd#e ejfd$e ej fd%e ej!fd&e"d'fd(e"d)fd*e"d+fd,e"d-fd.e"e#d/d'fd0e"e#d/d)fd1e"e#d/d+fd2e"e#d/d-fd3e$fd4ej%fd5&d6'eej(fd5&d6'eej(j)fd7efgdd8e*fed9d:e+e,j-e*e,j-e*e,j-d;fd<e,j-d=fgdd5&d6'ee.j/fd>e.fgd9d?e,j0fd@e,j1dAfgdAdBe,j1fd@e,j1dCfdDe,j1dEfdFe,j1fgd;dGe+e*e,e*dCfdHe+e*e,e*dEfdIe+e,e*fgd=ed9dJe+e,j-e*e"dEfdKe+e,j-e*e"dEfdLe+e,j-e*e"dEfdMe,j-fdNe,j-fdOe,j-fdPe*dEfgdedd7ej2dEfdQe3dEfgdedd7ej4dEfdRe3dEfgdeddSe$dTfe5dUgdUeddVej6dWfgdXededdSe$dCfdYe$dEfdZe$fd[efd7efgd/d\e"j7fgd]d^e"j8fd_e"fd`e"fdae"fgdbdPe"fgd+dce"dEfdde"j7fed]gd-dee"dEfdfe"j7fed]gdge"dEfed]edbgdhe"dEfed]edbgdiZ9djS )kr   z 
    For Felix source code.
    Felixzhttp://www.felix-lang.orgfelixflxz*.flxz*.flxhztext/x-felixz1.2)elifelseendifififdefifndef)H__derefallasassertattemptcallcallbackcasecasenocclasscodecompoundctypesdodonedowntor   r   
endattemptendcaser   endmatchenumexcept
exceptionsexpectfinallyforforallforgetforkfunctorgotoidentr   
incompleteinheritinstance	interfacejumplambdaloopmatchmodule	namespacenewnoexpandnontermobjofopenparseraiseregexpreglexregmatchrenamereturnthethentotypetypecasetypedef	typematchtypeofuptowhenwhilstwithyield)_gc_pointer_gc_typebodycommentconstexportheaderinlinelvalmacronoinlinenoreturnpackageprivatepodpropertypublicpublishrequirestodovirtualuse)defletrefvalvar)7unitvoidanyboolbyteoffsetaddresscaddress	cvaddressvaddresstinyshortintlongvlongutinyushortvshortuintulonguvlongint8int16int32int64uint8uint16uint32uint64floatdoubleldoublecomplexdcomplexlcomplex	imaginary
dimaginary
limaginarycharwcharucharcharpcharcpucharpucharcpstringwstringustringcontarrayvarraylistlvalueoptslice)falsetrue)andnotinisisinorxor)_svcwhile)rootselfthisz*([tTsSiIlLvV]|ll|LL|([iIuU])(8|16|32|64))?r   
whitespace)axiomctorfungenprocreduceunionz\b)suffixfuncname)classr%   cstructrH   struct	classnamez(instance|module|typeclass)\b
modulename	operatorszK0[xX]([0-9a-fA-F_]*\.[0-9a-fA-F_]+|[0-9a-fA-F_]+)[pP][+\-]?[0-9_]+[lLfFdD]?zH[0-9_]+(\.[0-9_]+[eE][+\-]?[0-9_]+|\.[0-9_]*|[eE][+\-]?[0-9_]+)[lLfFdD]?z/\.(0|[1-9][0-9_]*)([eE][+\-]?[0-9_]+)?[lLfFdD]?z0[Bb][01_]+z0[0-7_]+z0[xX][0-9a-fA-F_]+z(0|[1-9][0-9_]*)z([rR][cC]?|[cC][rR])"""tdqsz([rR][cC]?|[cC][rR])'''tsqsz([rR][cC]?|[cC][rR])"dqsz([rR][cC]?|[cC][rR])'sqsz[cCfFqQwWuU]?"""stringescapez[cCfFqQwWuU]?'''z[cCfFqQwWuU]?"z[cCfFqQwWuU]?'z[\[\]{}:(),;?]z[a-zA-Z_]\w*:>z({})\b|z[a-zA-Z_]\w*z\s+rb   z(#)(\s*)(if)(\s+)(0)if0#rh   z$!=|==|<<|>>|\|\||&&|[-~+/*%=<>&^|.$]z//(.*?)$z/[*]comment2z[^/*]z#pushz[*]/z#popz[/*]z^(\s*)(#if.*?(?<!\\))(\n)z^(\s*)(#endif.*?(?<!\\))(\n)z	(.*?)(\n)z(import|include)(\s+)(<[^>]*?>)z(import|include)(\s+)("[^"]*?")z(import|include)(\s+)('[^']*?')z[^/\n]+/z	(?<=\\)\nz\nz(?=\()z(?=\{)z\[)modulename2tvarlistr   z([a-zA-Z_]\w*)z#pop:2r   z\],z(with|where)\bzY\\([\\abfnrtv"\']|\n|N\{.*?\}|u[a-fA-F0-9]{4}|U[a-fA-F0-9]{8}|x[a-fA-F0-9]{2}|[0-7]{1,3})stringszP%(\([a-zA-Z0-9]+\))?[-#0 +]*([0-9]+|[*])?(\.([0-9]+|[*]))?[hlL]?[E-GXc-giorsux%]z[^\\\'"%\n]+z[\'"\\]%nl"z\\\\|\\"|\\\n'z\\\\|\\'|\\\nz"""z''')r   r   N):__name__
__module____qualname____doc__nameurlaliases	filenames	mimetypesversion_addedpreprockeywordskeyword_directiveskeyword_declarationskeyword_typeskeyword_constantsoperator_wordsname_builtinsname_pseudodecimal_suffixesr   r   r   r   	DecoratorDeclarationTypeConstantr   FloatBinOctHexIntegerr   r   r   LabelformatjoinBuiltinPseudor   r   r	   Preprocr
   WordSingle	MultilineFunctionr   Classr   	NamespaceEscapeInterpoltokens r  r  U/home/air/sanwanet/gpt-api/venv/lib/python3.10/site-packages/pygments/lexers/felix.pyr      s   
>
IM
Q

W^m
s
y~
           #  * N)r   pygments.lexerr   r   r   r   r   r   pygments.tokenr   r	   r
   r   r   r   r   r   r   __all__r   r  r  r  r  <module>   s
     
,