o ‡ÎÖaã@sfdZddlZddlmZmZmZddlmZmZm Z m Z m Z m Z m Z mZmZdgZGdd„deƒZdS)zç pygments.lexers.nimrod ~~~~~~~~~~~~~~~~~~~~~~ Lexer for the Nim language (formerly known as Nimrod). :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. éN)Ú RegexLexerÚincludeÚdefault) ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚ PunctuationÚErrorÚ NimrodLexerc@s,eZdZdZdZddgZddgZdgZej ej Bej BZ dd „Z gd ¢Zgd ¢Zgd ¢Zgd ¢Zdejfdefdefdefdedfdedfdedfdejdfde eƒejfdedfde eƒefde gd¢ƒejfdejfde eƒejfde eƒejfdefd ej d!fd"ej!d#fd$ej"d#fd%ej#d#fd&ej$d#fd'e%fd(e&fgd)ej'fdejd*fd+ejfgd,ej(fd-efd.efd/efgd0ej'fded*fe)d1ƒgd2ed*fd3ej'fe)d1ƒgd4ed*fe)d1ƒe)d5ƒgd6ej*d*fd7ej*d*fgd8efgd9ej fd:ej fe+d*ƒgd;ej fe+d*ƒgdœ Z-d?S)@rzS For `Nim `_ source code. .. versionadded:: 1.5 ÚNimrodÚnimrodÚnimz*.nimz*.nimrodz text/x-nimcCs@g}d}|D]}|D]}||d7}q | |¡d}qd |¡S)NÚz_?ú|)ÚappendÚjoin)ÚwordsÚnewWordsÚnewÚwordÚch©rú8/usr/lib/python3/dist-packages/pygments/lexers/nimrod.pyÚ underscorize"s  zNimrodLexer.underscorize)=Ú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ÚfuncÚifÚinÚyieldÚ interfaceÚisÚisnotÚiteratorÚletÚmacroÚmethodÚmixinÚmodÚnotÚnotinÚobjectÚofÚorÚoutÚprocÚptrÚraiseÚrefÚreturnÚshlÚshrÚstaticÚtemplateÚtryÚtupleÚtypeÚusingÚwhenÚwhileÚxor)ÚnilÚtrueÚfalse) rrIrErZrPrQr.rDr:rFr=r>)ÚintÚint8Úint16Úint32Úint64ÚfloatÚfloat32Úfloat64ÚboolÚcharÚrangeÚarrayÚseqÚsetÚstringz##.*$z#.*$z[*=><+\-/@$~&%!?|\\\[\]]z<\.\.|\.|,|\[\.|\.\]|\{\.|\.\}|\(\.|\.\)|\{|\}|\(|\)|:|\^|`|;z (?:[\w]+)"Úrdqsz"""Útdqsú"Údqsú'Úcharsz(%s)\bz(p_?r_?o_?c_?\s)(?![(\[\]])Úfuncname)ÚfromÚimportrz (v_?a_?r)\bz&\b((?![_\d])\w)(((?!_)\w)|(_(?!_)\w))*z![0-9][0-9_]*(?=([e.]|\'f(32|64))))ú float-suffixú float-numberz0x[a-f0-9][a-f0-9_]*ú int-suffixz 0b[01][01_]*z0o[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(?s  ,