a
    ñ»j½&  ã                   @   s|   d 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 g d¢ZG dd„ deƒZG dd„ deƒZG d	d
„ d
eƒZdS )zÁ
    pygments.lexers.d
    ~~~~~~~~~~~~~~~~~

    Lexers for D languages.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    )Ú
RegexLexerÚincludeÚwordsÚbygroups)ÚCommentÚKeywordÚNameÚStringÚNumberÚPunctuationÚ
Whitespace)ÚDLexerÚ	CrocLexerÚ
MiniDLexerc                )   @   sŠ  e Zd ZdZdZdZddgZdgZdgZdZ	d	e
fd
e
fdeeje
ƒfdejfdejdfeddd�efeddd�ejfeddd�ejfdejfeddd�ejfdejfdejfdejfdejfdejfdejfdejfdejfdejfdejfd efd!efd"efd#efd$efd%ed&fd'ed(fd)ed*fd+ed,fd-efd.efd/ed0fd1ej fd2e!fd3efd4eej"e
ej"e
ƒfg$d5ejfdejd6fd7ejd8fd9ejfgd:e!d;fd<ed8fe#d=ƒgd:e!d6fd<e!d8fe#d=ƒgd>efd?ed@fdAed8fgd>efd?ed6fdBed8fgdCefdDedEfdFed8fgdCefdDed6fdGed8fgdHefdIedJfdKed8fgdHefdIed6fdLed8fgdMefd:edNfdOed8fgdMefd:ed6fd<ed8fgdPœZ$dQS )Rr   z
    For D source.
    ÚDzhttps://dlang.org/z*.dz*.diÚdztext/x-dsrcz1.2ú\nú\s+ú(//.*?)(\n)z/(\\\n)?[*][\s\S]*?[*](\\\n)?/z/\+Únested_comment)MÚabstractÚaliasÚalignÚasmÚassertÚautoÚbodyÚbreakÚcaseÚcastÚcatchÚclassÚconstÚcontinueÚdebugÚdefaultZdelegateÚdeleteÚ
deprecatedÚdoÚelseÚenumZexportZexternÚfinallyÚfinalZforeach_reverseÚforeachÚforÚfunctionZgotoÚifZ	immutableÚimportZ	interfaceZ	invariantZinoutÚinÚisZlazyZmixinÚmoduleÚnewZnothrowÚoutÚoverrideÚpackageZpragmaÚprivateZ	protectedÚpublicZpureÚrefÚreturnÚscopeZsharedZstaticÚstructÚsuperÚswitchZsynchronizedÚtemplateÚthisÚthrowÚtryZtypeidZtypeofÚunionZunittestÚversionZvolatileÚwhileÚwithZ	__gsharedZ__traitsZ__vectorZ__parametersú\b©Úsuffix)Ztypedef)ÚboolÚbyteZcdoubleÚcentZcfloatÚcharZcrealZdcharÚdoubleÚfloatZidoubleZifloatÚintZirealÚlongÚrealÚshortZubyteZucentZuintZulongZushortZvoidZwcharú(false|true|null)\b)Z__FILE__Z__FILE_FULL_PATH__Z
__MODULE__Z__LINE__Z__FUNCTION__Z__PRETTY_FUNCTION__Z__DATE__Z__EOF__Z__TIME__Z__TIMESTAMP__Z
__VENDOR__Z__VERSION__zmacro\bz+(string|wstring|dstring|size_t|ptrdiff_t)\bzL0[xX]([0-9a-fA-F_]*\.[0-9a-fA-F_]+|[0-9a-fA-F_]+)[pP][+\-]?[0-9_]+[fFL]?[i]?zI[0-9_]+(\.[0-9_]+[eE][+\-]?[0-9_]+|\.[0-9_]*|[eE][+\-]?[0-9_]+)[fFL]?[i]?z0\.(0|[1-9][0-9_]*)([eE][+\-]?[0-9_]+)?[fFL]?[i]?z0[Bb][01_]+z0[0-7_]+z0[xX][0-9a-fA-F_]+z$(0|[1-9][0-9_]*)([LUu]|Lu|LU|uL|UL)?za'(\\['"?\\abfnrtv]|\\x[0-9a-fA-F]{2}|\\[0-7]{1,3}|\\u[0-9a-fA-F]{4}|\\U[0-9a-fA-F]{8}|\\&\w+;|.)'zr"[^"]*"[cwd]?z`[^`]*`[cwd]?z"(\\\\|\\[^\\]|[^"\\])*"[cwd]?zT\\(['\"?\\abfnrtv]|x[0-9a-fA-F]{2}|[0-7]{1,3}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8}|&\w+;)zx"[0-9a-fA-F_\s]*"[cwd]?zq"\[Údelimited_bracketzq"\(Údelimited_parenthesiszq"<Údelimited_anglezq"\{Údelimited_curlyzq"([^\W\d]\w*)\n.*?\n\1"zq"(.).*?\1"zq\{Útoken_stringz@([^\W\d]\w*)?zœ(~=|\^=|%=|\*=|==|!>=|!<=|!<>=|!<>|!<|!>|!=|>>>=|>>>|>>=|>>|>=|<>=|<>|<<=|<<|<=|\+\+|\+=|--|-=|\|\||\|=|&&|&=|\.\.\.|\.\.|/=)|[/.&|\-+<>!()\[\]{}?,;:$=*%^~]z
[^\W\d]\w*z(#line)(\s)(.*)(\n)z[^+/]+ú#pushz\+/ú#popz[+/]z\{Útoken_string_nestz\}Úrootz[^\[\]]+z\[Údelimited_inside_bracketz\]"z\]z[^()]+z\(Údelimited_inside_parenthesisz\)"z\)z[^<>]+ú<Údelimited_inside_anglez>"ú>z[^{}]+Údelimited_inside_curlyz\}")r_   r   r[   r^   rW   r`   rX   ra   rY   rc   rZ   re   N)%Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚ	filenamesÚaliasesÚ	mimetypesÚversion_addedr   r   r   ÚSingleÚ	Multiliner   r   ZRemovedÚTypeÚConstantÚPseudoÚReservedr   ÚBuiltinr
   ÚFloatÚBinÚOctÚHexÚIntegerr	   ÚCharÚ	Decoratorr   ÚSpecialr   Útokens© r€   r€   ú7E:\soccer\ml_env\Lib\site-packages\pygments/lexers/d.pyr      sî   
óòýüüûýüÿÿþþþ
ÿ¡c

üýýýýýýýýýý€ êr   c                   @   sâ   e Zd ZdZdZdZdgZdgZdgZdZ	de
fd	e
fd
eeje
ƒfdejdfeddd�efdejfdejfdejfdejfdejfdejfdefdefdefdefde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!œZd"S )#r   z
    For Croc source.
    ÚCroczhttp://jfbillingsley.com/crocz*.crocÚcrocztext/x-crocsrcÚ r   r   r   z/\*Únestedcomment)!Úasr   r   r   r    r!   r#   r%   r(   r)   r+   r.   r-   r/   ÚglobalÚ	namespacer0   r1   r2   r3   Úlocalr4   r<   r=   r?   r@   rB   rC   rD   ÚvarargrG   rH   ÚyieldrI   rJ   rV   z<([0-9][0-9_]*)(?=[.eE])(\.[0-9][0-9_]*)?([eE][+\-]?[0-9_]+)?z0[bB][01][01_]*z0[xX][0-9a-fA-F][0-9a-fA-F_]*z([0-9][0-9_]*)(?![.eE])zT'(\\['"\\nrt]|\\x[0-9a-fA-F]{2}|\\[0-9]{1,3}|\\u[0-9a-fA-F]{4}|\\U[0-9a-fA-F]{8}|.)'z@"(""|[^"])*"z@`(``|[^`])*`z@'(''|[^'])*'z"(\\\\|\\[^\\]|[^"\\])*"z‡(~=|\^=|%=|\*=|==|!=|>>>=|>>>|>>=|>>|>=|<=>|\?=|-\>|<<=|<<|<=|\+\+|\+=|--|-=|\|\||\|=|&&|&=|\.\.|/=)|[-/.&$@|\+<>!()\[\]{}?,;:=*%^~#\\]z[a-zA-Z_]\w*z[^*/]+r\   z\*/r]   z[*/])r_   r…   N)rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   r   r   r   rp   rq   r   r   rs   r
   rw   rx   rz   r{   r	   r|   r   r   r   r€   r€   r€   r�   r   »   sR   
ûúÿþþ×,

üÔr   c                   @   s(   e Zd ZdZdZg ZdgZdgZdZdS )r   z7
    For MiniD source. MiniD is now known as Croc.
    ÚMiniDÚminidztext/x-minidsrcr„   N)	rf   rg   rh   ri   rj   rl   rm   rn   ro   r€   r€   r€   r�   r   û   s   r   N)ri   Zpygments.lexerr   r   r   r   Zpygments.tokenr   r   r   r	   r
   r   r   Ú__all__r   r   r   r€   r€   r€   r�   Ú<module>   s   
$ *@