U
    ]gt                     @   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.func
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for FunC.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerincludewords)	TextCommentOperatorKeywordNameStringNumber
WhitespacePunctuation	FuncLexerc                   @   sb  e Zd ZdZdZddgZddgZdZdZd	Z	d
e
fde
fededededededededdefgeddddefeddddefeddddejfgdedfgedde
fdefdefd ed!fgd"efgd#efgd$ejfd%ejd&fgd'ejfd%ejd(fd)ejd!fd*ejfged+dd,dejfed-dddejfge	ejfge	d. ejfgd/Zd0S )1r   z
    For FunC source code.
    ZFunCfuncZfcz*.fcz*.funcz*https://docs.ton.org/develop/func/overview zJ(?!")(`([^`]+)`|((?=_)_|(?=\{)\{|(?=\})\}|(?![_`{}]))([^;,\[\]\(\)\s~.]+))z\nz\s+keywordsstrings
directivesnumericcommentsstorage	functions	variablesz[.;(),\[\]~{}])+z<=>z>=z<=z!=z==z^>>z~>>z>>z<<z/%z^%z~%z^/z~/z+=z-=z*=z/=z~/=z^/=z%=z^%=z<<=z>>=z~>>=z^>>=z&=z|=z^=^=~/%-*+><&|:?z(?<=\s)z(?=\s))prefixsuffix)ifZifnotelseZelseifZ	elseifnotwhileZdoZuntilrepeatreturnZimpureZ	method_idforallZasminlineZ
inline_refz\b)truefalsez#include|#pragma	directivezversion|not-versionz-(>=|<=|=|>|<|\^)?([0-9]+)(.[0-9]+)?(.[0-9]+)?;z#popz\"([^\n\"]+)\"[Hhcusa]?z?\b(-?(?!_)([\d_]+|0x[\d_a-fA-F]+)|0b[1_0]+)(?<!_)(?=[\s\)\],;])z
;;([^\n]*)z\{-commentz[^-}{]+z#pushz-\}z[-}{])varintslicetuplecellZbuilderZcont_z(?=[\s\(\),\[\]]))globalconstz(?=[\(]))rootr   r   r2   r   r   r   r4   r   r   r   N)__name__
__module____qualname____doc__namealiases	filenamesurlZversion_added
identifierr   r   r   r   r   r   Constantr   r   r
   r   Z
SinglelineZ	MultilineTyper	   VariableZFunctiontokens rK   rK   8/tmp/pip-unpacked-wheel-zak7uw41/pygments/lexers/func.pyr      s     


 	N)rA   Zpygments.lexerr   r   r   Zpygments.tokenr   r   r   r   r	   r
   r   r   r   __all__r   rK   rK   rK   rL   <module>   s   
,