a
    ;@b                     @   s^   d Z ddl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.chapel
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexer for the Chapel language.

    :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroupswords)	TextCommentOperatorKeywordNameStringNumberPunctuation
WhitespaceChapelLexerc                   @   s  e Zd ZdZdZdgZddgZdZdZdZ	g ee	R Z
d	Zd
ZdZdefdefdefdejf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g e
eR ddefdeeedfdeeedfdeeedfdeeedfdefdefdef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"j#fgd'e"j$d(fgd)e"j%d(fd*e!d+fd,e!fgee
ddefeeddejfd-e"j#d(fgd.Z&d/S )0r   zU
    For `Chapel <https://chapel-lang.org/>`_ source.

    .. versionadded:: 2.0
    ZChapelz*.chplZchapelZchpl)boolbytescompleximagintlocaleZnothingZopaquerangerealstringZuintZvoid)ZatomicZsinglesync)ZborrowedZownedZsharedZ	unmanaged)	ZconfigconstinZinoutoutZparamreftypevar)ZfalseZnilZnonetrue)AZalignasZbeginbreakZbyZcatchZcobeginZcoforallcontinueZdeferdeleteZdmappedZdodomainelseenumexceptZexportZexternforZforallZforeachZ
forwardingifZ
implementsimportindexinitZinlineZlabellambdaZletZlifetimelocalnewZnoinitZonZonlyZ	otherwiseoverrideZpragmaZ	primitiveZprivateZ	prototypeZpublicreduceZrequirereturnscanZselectserialZsparseZ	subdomainZthenthisthrowZthrowstryZuseZwhenwherewhilewithyieldzipz\nz\s+z\\\nz	//(.*?)\nz/(\\\n)?[*](.|\n)*?[*](\\\n)?/z\b)suffixz(iter)(\s+)procnamez(proc)(\s+)z(operator)(\s+)z*(class|interface|module|record|union)(\s+)	classnamez\d+iz\d+\.\d*([Ee][-+]\d+)?iz\.\d+([Ee][-+]\d+)?iz\d+[Ee][-+]\d+iz(\d*\.\d+)([eE][+-]?[0-9]+)?i?z\d+[eE][+-]?[0-9]+i?z
0[bB][01]+z0[xX][0-9a-fA-F]+z0[oO][0-7]+z[0-9]+z"(\\\\|\\"|[^"])*"z'(\\\\|\\'|[^'])*'z(=|\+=|-=|\*=|/=|\*\*=|%=|&=|\|=|\^=|&&=|\|\|=|<<=|>>=|<=>|<~>|\.\.|by|#|\.\.\.|&&|\|\||!|&|\||\^|~|<<|>>|==|!=|<=|>=|<|>|[+\-*/%]|\*\*)z[:;,.?()\[\]{}]z[a-zA-Z_][\w$]*z#popz<([a-zA-Z_][.\w$]*|\~[a-zA-Z_][.\w$]*|[+*/!~%<>=&^|\-:]{1,2})z\(receivertypez\)+\.z[^()]*)rootr?   r>   r@   N)'__name__
__module____qualname____doc__name	filenamesaliasesZknown_typesZtype_modifiers_parZtype_modifiers_memZtype_modifiersZdeclarationsZ	constantsZother_keywordsr   r   r   SingleZ	Multiliner   r   ZDeclarationZConstantTyper   r   ZFloatZBinZHexZOctZIntegerr
   r   r   r	   ZOtherZClassZFunctiontokens rL   rL   5lib/python3.9/site-packages/pygments/lexers/chapel.pyr      sr   
8

N)rE   Zpygments.lexerr   r   r   Zpygments.tokenr   r   r   r   r	   r
   r   r   r   __all__r   rL   rL   rL   rM   <module>   s   
,