o
    Th$                     @   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-2025 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
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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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d0e#fgeeddefee	ddejfd1e$j%d,fgd2e$j(d,fgd3Z)d4S )5r   z
    For Chapel source.
    Chapelzhttps://chapel-lang.org/z*.chplchapelchplz2.0)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$]*)rootrx   rw   ry   rv   N)*__name__
__module____qualname____doc__nameurl	filenamesaliasesversion_added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 r   r   W/home/air/segue/gemini/back/venv/lib/python3.10/site-packages/pygments/lexers/chapel.pyr      s~    

9


N)r~   pygments.lexerr   r   r   pygments.tokenr   r   r   r   r	   r
   r   r   r   __all__r   r   r   r   r   <module>   s
    
,