
    |e%                     d    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e      Zy)z
    pygments.lexers.chapel
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexer for the Chapel language.

    :copyright: Copyright 2006-2023 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                   D   e Zd ZdZdZdZdgZddgZdZdZ	d	Z
g 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      ej,                  f eed      ej.                  f eed      ej0                  f eg eed      efded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j6                  fd!ej6                  fd"ej8                  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#jH                  fgd*e#jJ                  d+fgd,e#jL                  d+fd-e"d.fd/e"fg eed      ef eed      ej0                  fd0e#jH                  d+fgd1e#jN                  d+fgd2Z(y3)4r   z7
    For Chapel source.

    .. versionadded:: 2.0
    Chapelzhttps://chapel-lang.org/z*.chplchapelchpl)boolbytescompleximagintlocalenothingopaquerangerealstringuintvoid)atomicsinglesync)borrowedownedshared	unmanaged)	configconstininoutoutparamreftypevar)falsenilnonetrue)Aalignasbeginbreakbycatchcobegincoforallcontinuedeferdeletedmappeddodomainelseenumexceptexportexternforforallforeach
forwardingif
implementsimportindexinitinlinelabellambdaletlifetimelocalnewnoinitononly	otherwiseoverridepragma	primitiveprivate	prototypepublicreducerequirereturnscanselectserialsparse	subdomainthenthisthrowthrowstryusewhenwherewhilewithyieldzipz\nz\s+z\\\nz	//(.*?)\nz/(\\\n)?[*](.|\n)*?[*](\\\n)?/z\b)suffix@attributenamez(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[^()]*z[a-zA-Z_][.\w$]*)rootrz   ry   r{   rx   N))__name__
__module____qualname____doc__nameurl	filenamesaliasesknown_typestype_modifiers_partype_modifiers_memtype_modifiersdeclarations	constantsother_keywordsr   r   r   Single	Multiliner   r	   DeclarationConstantTyper   r   FloatBinHexOctIntegerr   r   r   r
   OtherClassFunction	Decoratortokens     8/usr/lib/python3/dist-packages/pygments/lexers/chapel.pyr   r      s   
 D
$C
I GK 6E?)?,>?N#L 1IN* JZ dO7>>*.0A0AB<.0C0CD9U+W-=-=>;u-w||<5^5n5eDgN7O,Xgz:JGXgz:JG':!>
K:HWj<Y f'0$f-( /=$fll3 FJJ'!6::.VZZ(' #F+"F+ !)	*
  -  ,m7
r  V4
( ]]F$ K0{#	
 >%0':;u-w||<

F+
 !$..&9
WNFr   N)r   pygments.lexerr   r   r   pygments.tokenr   r   r   r	   r
   r   r   r   r   __all__r   r   r   r   <module>r      s8    7 6$ $ $ /z* zr   