Ë
    |í¼e  ã                   óp   — d Z ddlZddl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.nimrod
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexer for the Nim language (formerly known as Nimrod).

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Ú
RegexLexerÚincludeÚdefaultÚbygroups)	ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚErrorÚNimrodLexerc                   ó  — e Zd ZdZdZdZddgZddgZdgZe	j                  e	j                  z  Zd	„ Zg d
¢Zg d¢Zg d¢Zg d¢Zdej&                  dfdej&                  fdej*                  dfdefdej,                  dfdefdefd eej6                  eej6                  «      dfdedfdej:                  dfdedfd ej<                  d!fd" ee«      z  ej>                  fd# eeej6                  «      d$fd" ee«      z  efd" eg d%¢«      z  ej@                  fd&ejB                  fd" ee«      z  e"jF                  fd" ee«      z  ejH                  fd'e"fd(e%jL                  d)fd*e%jN                  d+fd,e%jP                  d+fd-e%jR                  d+fd.e%jT                  d+fd/ej6                  fd0e+fgd1ejX                  fd ej<                  d2fd3ej<                  fgd4ejZ                  fd5efd6efd7efgd8ej&                  fdej&                  d9fd:ej&                  d2fd;ej&                  fgd8ej*                  fdej*                  d9fd<ej*                  d2fd;ej*                  fgd=ejX                  fded2f e.d>«      gd?ed2fd@ejX                  f e.d>«      gdej:                  d2f e.d>«      dAej:                  fgdBe"j^                  d2fdCe"j^                  d2fgdAefgdDe%jL                  fdEe%jL                  f e0d2«      gdFe%jL                  f e0d2«      gdGe%jT                  jb                  fdHe%jT                  f e0d2«      gdIefdJej6                  fdKed2fdLe"jd                  fgdMefdJej6                  fdNej,                  d2fdOej,                  fgdPœZ3yQ)Rr   z9
    For Nim source code.

    .. versionadded:: 1.5
    ÚNimrodzhttp://nim-lang.org/ÚnimrodÚnimz*.nimz*.nimrodz
text/x-nimc                 óÐ   — g }g }| D ]M  }|D ]$  }|j                  |«       |j                  d«       Œ& |j                  dj                  |«      «       g }ŒO dj                  |«      S )Nz_?Ú ú|)ÚappendÚjoin)ÚwordsÚnewWordsÚnewÚwordÚchs        ú8/usr/lib/python3/dist-packages/pygments/lexers/nimrod.pyÚunderscorizezNimrodLexer.underscorize#   sm   € ØˆØˆØò 	ˆDØò !�Ø—
‘
˜2”Ø—
‘
˜4Õ ð!ð �O‰O˜BŸG™G C›LÔ)Ø‰Cð	ð �x‰x˜Ó!Ð!ó    )8ÚaddrÚandÚasÚasmÚbindÚblockÚbreakÚcaseÚcastÚconceptÚconstÚcontinueÚ	converterÚdeferÚdiscardÚdistinctÚdivÚdoÚelifÚelseÚendÚenumÚexceptÚexportÚfinallyÚforÚifÚinÚyieldÚ	interfaceÚisÚisnotÚiteratorÚletÚmixinÚmodÚnotÚnotinÚobjectÚofÚorÚoutÚptrÚraiseÚrefÚreturnÚshlÚshrÚstaticÚtryÚtupleÚtypeÚusingÚwhenÚwhileÚxor)ÚnilÚtrueÚfalse)r#   rJ   rF   rY   rP   rQ   r2   rE   r=   rG   r@   rA   )ÚintÚint8Úint16Úint32Úint64ÚfloatÚfloat32Úfloat64ÚboolÚcharÚrangeÚarrayÚseqÚsetÚstringz##\[Ú
doccommentz##.*$z#\[Úcommentz#.*$z\{\.Úpragmaz[*=><+\-/@$~&%!?|\\\[\]]z<\.\.|\.|,|\[\.|\.\]|\{\.|\.\}|\(\.|\.\)|\{|\}|\(|\)|:|\^|`|;z(\n\s*)(of)(\s)Ú
casebranchz
(?:[\w]+)"Úrdqsz"""Útdqsú"Údqsú'Úcharsz(%s)\bz0(proc|func|method|macro|template)(\s)(?![(\[\]])Úfuncname)ÚfromÚimportr   r9   z(v_?a_?r)\bz&\b((?![_\d])\w)(((?!_)\w)|(_(?!_)\w))*z![0-9][0-9_]*(?=([e.]|\'f(32|64))))úfloat-suffixúfloat-numberz0x[a-f0-9][a-f0-9_]*ú
int-suffixz0b[01][01_]*z0o[0-7][0-7_]*z[0-9][0-9_]*z\s+z.+$z-\\([\\abcefnrtvl"\']|x[a-f0-9]{2}|[0-9]{1,3})z#popú.z(?<!\$)\$(\d+|#|\w+)+z[^\\\'"$\n]+z[\'"\\]z\$z[^\]#]+z#pushz\]##z[\]#]z\]#z0\\([\\abcefnrtvl"\']|\n|x[a-f0-9]{2}|[0-9]{1,3})Ústringsz"(?!")z""z\nz$((?![\d_])\w)(((?!_)\w)|(_(?!_)\w))*z`.+`z\.(?!\.)[0-9_]*[f]*ze[+-]?[0-9][0-9_]*z
\'f(32|64)z
\'i(32|64)z	\'i(8|16)ú,z[\n ]+ú:z\w+|[^:]z[:,]z\.\}z\w+|\W+|[^.}])Úrootru   r}   rl   rm   rs   rp   rq   rv   Únlrz   ry   r{   ro   rn   N)4Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesÚreÚ	MULTILINEÚ
IGNORECASEÚflagsr    ÚkeywordsÚkeywordsPseudoÚopWordsÚtypesr   ÚDocr   Ú	MultilineÚOtherr	   r   r   r   Ú
Whitespacer
   ÚDoubleÚCharÚWordÚ	NamespaceÚDeclarationr   ÚBuiltinÚPseudor   ÚFloatÚHexÚBinÚOctÚIntegerr   ÚEscapeÚInterpolr   ÚFunctionr   ÚLongÚLabelÚtokens© r!   r   r   r      ss  „ ñð €DØ
 €CØ˜Ð€GØ˜*Ð%€IØ�€Ià�L‰L˜2Ÿ=™=Ñ(€Eò	"ò	€Hò€Nò€Gò
€Eð �f—j‘j ,Ð/Ø�v—z‘zÐ"Ø�W×&Ñ&¨	Ð2Ø�gÐð �f—l‘l HÐ-ð )¨(Ð3ØLØðð  ¡¨$¯/©/¸7Ø*.¯/©/ó";Ø<HðJð ˜F FÐ+Ø�V—]‘] FÐ+Ø�&˜%Ð ð �&—+‘+˜wÐ'ð ™ gÓ.Ñ.°·±Ð>Ø@Ù�g˜tŸ™Ó/°ð=à™ hÓ/Ñ/°Ð9Ø™Ò&MÓNÑNØ×Ñð à˜W×0Ñ0Ð1Ø™ eÓ,Ñ,¨d¯l©lÐ;Ø™ nÓ5Ñ5°w·~±~ÐFð 7¸Ð=ð 2Ø�\‰\Ð;ð=à$ f§j¡j°,Ð?Ø˜fŸj™j¨,Ð7Ø §
¡
¨LÐ9Ø˜fŸn™n¨lÐ;ð �T—_‘_Ð%Ø�UˆOðg4
ðl >¸v¿}¹}ÐMØ�6—;‘; Ð'Ø�6—;‘;Ðð
ð & v§¡Ð7Ø˜fÐ%à˜Ð à�FˆOð
ð ˜Ÿ™Ð$Ø�f—j‘j 'Ð*Ø�f—j‘j &Ð)Ø�v—z‘zÐ"ð	
ð ˜×*Ñ*Ð+Ø�W×&Ñ&¨Ð0Ø�W×&Ñ&¨Ð/Ø�w×(Ñ(Ð)ð	
ð AØ�]‰]ðà�6˜6Ð"Ù�IÓð	
ð ˜ Ð'Ø�F—M‘MÐ"Ù�IÓð
ð �V—]‘] FÐ+Ù�IÓØ�F—M‘MÐ"ð
ð 5°d·m±mÀVÐLØ�d—m‘m VÐ,ð
ð
 �FˆOð
ð $ V§\¡\Ð2Ø" F§L¡LÐ1Ù�F‹Oð
ð ˜FŸL™LÐ)Ù�F‹Oð
ð
 ˜FŸN™N×/Ñ/Ð0Ø˜6Ÿ>™>Ð*Ù�F‹Oð
ð �;ÐØ˜Ÿ™Ð(Ø�8˜VÐ$Ø˜$Ÿ*™*Ð%ð	
ð �dˆOØ˜Ÿ™Ð(Ø�f—l‘l FÐ+Ø˜vŸ|™|Ð,ð	
ñwA�Fr!   )r…   r‹   Úpygments.lexerr   r   r   r   Úpygments.tokenr   r   r	   r
   r   r   r   r   r   Ú__all__r   r©   r!   r   ú<module>r­      s;   ðñó 
ç AÓ A÷÷ õ ð ˆ/€ôt�*õ tr!   