B
    `c                 @   sj   d Z ddlZddlmZ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.solidity
    ~~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for Solidity.

    :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    N)
RegexLexerbygroupsincludewords)	TextCommentOperatorKeywordNameStringNumberPunctuation
WhitespaceSolidityLexerc               @   sF  e Zd ZdZdZdgZdgZg Zej	ej
B ZdZededded	fd
eeeejfed d eejeeejfdeejeejfdefeddddejfeddddejfeejfeddefdefdefgdejfdejfdejfgdejfdejfdej fdej!fgededdeeeefded fgd!efd"efgd#Z"d$S )%r   z>
    For Solidity source code.

    .. versionadded:: 2.5
    ZSolidityZsolidityz*.solz\b(address|bool|(?:(?:bytes|hash|int|string|uint)(?:8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?))\b
whitespacecommentsz\bpragma\s+solidity\bpragmaz\b(contract)(\s+)([a-zA-Z_]\w*)z/(\s+)((?:external|public|internal|private)\s+)?z([a-zA-Z_]\w*)z1\b(enum|event|function|struct)(\s+)([a-zA-Z_]\w*)z,\b(msg|block|tx)\.([A-Za-z_][a-zA-Z0-9_]*)\b)%blockbreakZconstantconstructorcontinueZcontractdoelseZexternalfalseforfunctionifimportZ	inheritedZinternalisZlibrarymappingZmemorymodifiermsgnewZpayableprivatepublicrequirereturnZreturnsstructZsuicidethrowthistrueZtxvarwhilez\b)prefixsuffix)Z	keccak256	constantsz[a-zA-Z_]\w*z
[!<=>+*/-]z[.;:{}(),\[\]]z//(\n|[\w\W]*?[^\\]\n)z/(\\\n)?[*][\w\W]*?[*](\\\n)?/z/(\\\n)?[*][\w\W]*z("(\\"|.)*?")z('(\\'|.)*?')z\b0[xX][0-9a-fA-F]+\bz\b\d+\bz(\^|>=|<)(\s*)(\d+\.\d+\.\d+);z#popz\s+z\n)rootr   r/   r   r   N)#__name__
__module____qualname____doc__namealiases	filenames	mimetypesre	MULTILINEUNICODEflagsdatatyper   r	   r   r   r
   EntityTypeVariabler   ZBuiltinr   r   r   r   SingleZ	Multiliner   Doubler   ZHexDecimaltokens rF   rF   `/home/kop/projects/devel/pgwui/test_venv/lib/python3.7/site-packages/pygments/lexers/solidity.pyr      sT   


)r5   r:   Zpygments.lexerr   r   r   r   Zpygments.tokenr   r   r   r	   r
   r   r   r   r   __all__r   rF   rF   rF   rG   <module>	   s
   ,