B
    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-2022 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ZdgZddgZdZdZ	d	Z
e	e
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ee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'd0S )1r   z7
    For Chapel source.

    .. versionadded:: 2.0
    ZChapelzhttps://chapel-lang.org/z*.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indexZinitZinlineZlabellambdaZletZlifetimeZ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__nameZurl	filenamesaliasesZknown_typesZtype_modifiers_parZtype_modifiers_memZtype_modifiersZdeclarationsZ	constantsZother_keywordsr   r   r   SingleZ	Multiliner   r   ZDeclarationZConstantZTyper   r   ZFloatZBinZHexZOctZIntegerr
   r   r   r	   ZOtherZClassZFunctiontokens rI   rI   5lib/python3.7/site-packages/pygments/lexers/chapel.pyr      sd   

N)rC   Zpygments.lexerr   r   r   Zpygments.tokenr   r   r   r   r	   r
   r   r   r   __all__r   rI   rI   rI   rJ   <module>	   s   ,