o
    Rh                     @   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.vyper
    ~~~~~~~~~~~~~~~~~~~~~

    Lexer for the Vyper Smart Contract language.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroupswords)	CommentStringNameKeywordNumberOperatorPunctuationText
Whitespace
VyperLexerc                   @   s  e Zd ZdZdZdgZdgZdZdZde	fde
ee	fd	ejfd
ejdfdejdfdejdfde
ee	ejfde
ee	ejfde
ee	eje	ee	ejfdejfdejfdejfeddddefeddddejfeddddejfeddddejjfeddddejfde
ee	ee	ej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j%fd'efgd
ejd(fd)ejfd*ejfgd+ejfdejd(fd,ej&fgd-ejfdejd(fd,ej&fgd.Z'd/S )0r   z+For the Vyper smart contract language.
    Vypervyperz*.vyzhttps://vyper.readthedocs.ioz2.17z\s+z(\\)(\n|\r\n|\r)z#.*$z\"\"\"multiline-comment'single-string"double-stringz"(def)(\s+)([a-zA-Z_][a-zA-Z0-9_]*)z9(event|struct|interface|log)(\s+)([a-zA-Z_][a-zA-Z0-9_]*)z.(from)(\s+)(vyper\.\w+)(\s+)(import)(\s+)(\w+)z\b0x[0-9a-fA-F]+\bz\b(\d{1,3}(?:_\d{3})*|\d+)\bz\b\d+\.\d*\b)defeventpassreturnforwhileifelifelseassertraiseimportinstruct
implements	interfacefromindexedlogextcall
staticcallz\b)prefixsuffix)publicprivateviewpureconstant	immutable
nonpayable)+bitwise_andbitwise_not
bitwise_orbitwise_xorshiftcreate_minimal_proxy_tocreate_copy_ofcreate_from_blueprintecaddecmul	ecrecover	keccak256sha256concatconvertuint2str	extract32sliceabsceilfloormax	max_valuemin	min_value
pow_mod256sqrtisqrtuint256_addmoduint256_mulmod
unsafe_add
unsafe_sub
unsafe_mul
unsafe_divas_wei_value	blockhashemptylen	method_id_abi_encode_abi_decodeprintrange)z
msg.senderz	msg.valuezblock.timestampzblock.numberzmsg.gas)6uintuint8uint16uint32uint64uint128uint256intint8int16int32int64int128int256booldecimalbytesbytes1bytes2bytes3bytes4bytes5bytes6bytes7bytes8bytes9bytes10bytes11bytes12bytes13bytes14bytes15bytes16bytes17bytes18bytes19bytes20bytes21bytes22bytes23bytes24bytes25bytes26bytes27bytes28bytes29bytes30bytes31bytes32stringr   addressenumr#   z)\b(indexed)\b(\s*)(\()(\s*)(\w+)(\s*)(\))z$(\+|\-|\*|\/|<=?|>=?|==|!=|=|\||&|%)z[.,:;()\[\]{}]z@[\w.]+z__\w+__EMPTY_BYTES32z	\bERC20\bz\bself\bzBytes\[\d+\]z\b[a-zA-Z_]\w*\b:z\b[a-zA-Z_]\w*\bz#popz[^"]+z\"z[^\\']+z\\.z[^\\"]+)rootr   r   r   N)(__name__
__module____qualname____doc__namealiases	filenamesurlversion_addedr   r   r   r   Single	Multiliner   Doubler   r   FunctionClass	Namespacer	   HexIntegerFloatr   DeclarationBuiltinPseudoTyper   r
   	DecoratorMagicConstant	AttributeVariableEscapetokens r   r   W/home/air/sanwanet/backup_V2/venv/lib/python3.10/site-packages/pygments/lexers/vyper.pyr      s    


	

`


N)r   pygments.lexerr   r   r   pygments.tokenr   r   r   r   r	   r
   r   r   r   __all__r   r   r   r   r   <module>   s
    
,