Ë
    |í¼e®%  ã                   óp   — 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e«      Zy)zÌ
    pygments.lexers.felix
    ~~~~~~~~~~~~~~~~~~~~~

    Lexer for the Felix language.

    :copyright: Copyright 2006-2023 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            "       óV  — 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i d ed«       edd¬«      edf edd¬«      edfdedf ee
d¬«      ef eed¬«      ej.                  f eed¬«      ej0                  f eed¬«      ej2                  f eed¬«      ej4                  f ed«      dej8                  fdej8                  fd ej8                  fd!ez  ej:                  fd"ez  ej<                  fd#ez  ej>                  fd$ez  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d/e! e"d.d(«      fd0e! e"d.d*«      fd1e! e"d.d,«      fd2e#fd3ejH                  fd4d5jK                  e«      z  ejL                  fd4d5jK                  e«      z  ejL                  jN                  fd6efg“dd7e(f ed8«      d9 e)e*jV                  e(e*jV                  e(e*jV                  «      d:fd;e*jV                  d<fg“dd4d5jK                  e«      z  e,jZ                  fd=e,fg“d8d>e*j\                  fd?e*j^                  d@fg“d@dAe*j^                  fd?e*j^                  dBfdCe*j^                  dDfdEe*j^                  fg“d:dF e)e(e*e(«      dBfdG e)e(e*e(«      dDfdH e)e*e(«      fg“d< ed8«      dI e)e*jV                  e(e!«      dDfdJ e)e*jV                  e(e!«      dDfdK e)e*jV                  e(e!«      dDfdLe*jV                  fdMe*jV                  fdNe*jV                  fdOe(dDfg“d ed«      d6ej`                  dDfdPe1dDfg“d ed«      d6ejd                  dDfdQe1dDfg“d ed«      dRe#dSf e3dT«      g“dT ed«      dUejh                  dVfg“dW ed«       ed«      dRe#dBfdXe#dDfdYe#fdZefd6efg“d.d[e!jj                  fg“d\d]e!jl                  fd^e!fd_e!fd`e!fg“dadOe!fg“d*dbe!dDfdce!jj                  f ed\«      g“d,dde!dDfdee!jj                  f ed\«      g“dfe!dDf ed\«       eda«      gdge!dDf ed\«       eda«      gdhœ¥Z7yi)jr   z;
    For Felix source code.

    .. versionadded:: 1.2
    ÚFelixzhttp://www.felix-lang.orgÚfelixÚflxz*.flxz*.flxhztext/x-felix)Ú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'   ÚcstructrJ   Ú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_]+%sz
0[0-7_]+%sz0[xX][0-9a-fA-F_]+%sz(0|[1-9][0-9_]*)%sz([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(%s)\bú|z[a-zA-Z_]\w*z\s+rd   z(#)(\s*)(if)(\s+)(0)Úif0ú#rj   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)8Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesÚ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ÚjoinÚBuiltinÚPseudor   r   r
   ÚPreprocr   ÚWordÚSingleÚ	MultilineÚFunctionr	   ÚClassr   Ú	NamespaceÚEscapeÚInterpolÚtokens© ó    ú7/usr/lib/python3/dist-packages/pygments/lexers/felix.pyr   r      s¦  „ ñð €DØ
%€CØ˜Ð€GØ˜(Ð#€IØÐ €Ið€Gð€HðÐðÐð€Mð&Ðð€Nð€Mð€Kð DÐðrØÙ�LÓ!ñ ð Ø%*ô,à�jð"ñ ÐBÈ5ÔQØ�kð#à-¨w¸ÐEá�8 EÔ*¨GÐ4ÙÐ%¨eÔ4°d·n±nÐEÙÐ'°Ô6¸×8KÑ8KÐLÙ�=¨Ô/°·±Ð>ÙÐ$¨UÔ3°W×5EÑ5EÐFñ �KÓ ð+Ø,2¯L©Lð:ð6Ø7=·|±|ðEà?Ø�\‰\ðð
 Ð 0Ñ0°&·*±*Ð=àÐ-Ñ-¨v¯z©zÐ:à$Ð'7Ñ7¸¿¹ÐDà"Ð%5Ñ5°v·~±~ÐFð '¨°Ð7Ø&¨°Ð7Ø$ f¨eÐ4Ø$ f¨eÐ4Ø ©°.À&Ó)IÐJØ ©°.À&Ó)IÐJØ˜v¡x°ÀÓ'FÐGØ˜v¡x°ÀÓ'FÐGð  Ð,ð  §
¡
Ð+ð ˜Ÿ™ -Ó0Ñ0°$·,±,Ð?Ø˜Ÿ™ +Ó.Ñ.°·±×0CÑ0CÐDØ˜dÐ#ðw<
ðrð| 	Ø�ZÐ á�IÓð %Ù˜Ÿ™¨*°g·o±oØ §¡ó1Ø27ð9ð �7—?‘? GÐ,ð

ð}rðR 	Ø˜Ÿ™ .Ó1Ñ1°8·=±=ÐAØ4°hÐ?ð
ðSrðZ 	Ø˜'Ÿ.™.Ð)Ø�g×'Ñ'¨Ð4ð
ð[rðb 	Ø�w×(Ñ(Ð)Ø�g×'Ñ'¨Ð1Ø�g×'Ñ'¨Ð0Ø�g×'Ñ'Ð(ð	
ðcrðn 	Ø)Ù˜ W¨jÓ9¸7ðDà,Ù˜ W¨jÓ9¸6ðCà™8 G¨ZÓ8Ð9ð
ðorð| 	Ù�IÓØ/Ù�g—o‘o z°6Ó:¸FðDà/Ù�g—o‘o z°6Ó:¸FðDà/Ù�g—o‘o z°6Ó:¸FðDà˜Ÿ™Ð)ð �7—?‘?Ð#Ø˜7Ÿ?™?Ð+Ø�J Ð'ð
ð}rðZ 	Ù�LÓ!Ø˜dŸm™m¨VÐ4à˜˜fÐ%ð	
ð[rðf 	Ù�LÓ!Ø˜dŸj™j¨&Ð1à˜˜fÐ%ð	
ðgrðr 	Ù�LÓ!Ø�KÐ!<Ð=Ù�MÓ"ð
ðsrð| 	Ù�LÓ!Ø §¡°Ð9ð
ð}rðD 	Ù�LÓ!Ù�KÓ Ø�K Ð)Ø�K Ð(Ø�;ÐØ Ð(Ø˜dÐ#ð
ðErðV 	ð<Ø=C¿]¹]ðLð
ðWrð^ 	ð&Ø'-§¡ð8à˜fÐ%à˜Ð à�6ˆNð	
ð_rðr 	Ø�FˆOð
ðsrðx 	Ø�6˜6Ð"à˜vŸ}™}Ð-Ù�IÓð	
ðyrðD 	Ø�6˜6Ð"à˜vŸ}™}Ð-Ù�IÓð	
ðErðR �V˜VÐ$Ù�IÓÙ�D‹Mð
ð �V˜VÐ$Ù�IÓÙ�D‹Mð
ò[r�Fr  N)ræ   Úpygments.lexerr   r   r   r   r   r   Úpygments.tokenr	   r
   r   r   r   r   r   r   r   Ú__all__r   r  r  r  ú<module>r     s:   ðñ÷÷ ÷$÷ $õ $ð ˆ.€ôA�õ Ar  