Your IP : 216.73.216.213
B
˽�\% � @ sf d Z ddlmZmZmZmZmZ ddlmZm Z m
Z
mZmZm
Z
mZmZmZ dgZG dd� de�ZdS )z�
pygments.lexers.rust
~~~~~~~~~~~~~~~~~~~~
Lexers for the Rust language.
:copyright: Copyright 2006-2019 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�
RegexLexer�include�bygroups�words�default) �Text�Comment�Operator�Keyword�Name�String�Number�Punctuation�
Whitespace� RustLexerc 0 @ s@ e Zd ZdZdZddgZddgZdgZedd d
�e j
fZedd d
�ej
fZdejfed
�gdefdefdejfdejfdejfdejdfdejdfdejdfdejfedd d
�e fedd d
�e jfde jfde dfde jfde d fd!e d"fd#ee ee �fed$ej
jfed%efd&ed"fd'ee ejej�fd(ejfd)ejfd*ej d+fd,ej!d+fd-ej"d+fd.ej#d+fd/ej$d+fd0ed1fd2ed3fd4efd5ej
fd6ej%fd7e&fd8e'fd9efd:ejd;fd<eeje&eeee&�d=fd>eeje&eee&�d?fg)d@ejfdejdAfdBejdCfdDejfgd@ejfdejdAfdBejdCfdDejfgdefd9ej(dCfedC�gdefd9ej)dCfedC�gdefdEe jfeed9ej*dCfedC�gdFe dCfdGe dCfedC�gd2edCfdHej+fdIefdJefgdKej+fe,d3�gdLe'dAfdMe'dCfgdNe'dAfdOe'dCfgd2ed3fdPejd;fdNejdQfge,dR�dSejdCfdTejfge,dR�dUejdCfdVejfgdW�Z-dXS )Yr z\
Lexer for the Rust programming language (version 1.10).
.. versionadded:: 1.6
ZRustz*.rsz*.rs.inZrustZrsz text/rust)�u8�u16�u32Zu64Zi8Zi16Zi32Zi64Zi128Zu128ZusizeZisizeZf32Zf64�str�boolz\b)�suffix)#ZCopyZSend�SizedZSyncZDropZFnZFnMutZFnOnceZBoxZToOwnedZCloneZ PartialEqZ
PartialOrdZEqZOrdZAsRefZAsMutZIntoZFromZDefault�IteratorZExtendZIntoIteratorZDoubleEndedIteratorZExactSizeIteratorZOptionZSome�NoneZResultZOkZErrZSliceConcatExtr ZToStringZVecz
#![^[\r\n].*$�basez\nz\s+z//!.*?\nz///(\n|[^/].*?\n)z //(.*?)\nz/\*\*(\n|[^/*])�
doccommentz/\*!z/\*�commentz\$([a-zA-Z_]\w*|\(,?|\),?|,?))�asZbox�constZcrate�else�extern�for�if�impl�inZloop�match�moveZmutZpub�ref�return�static�superZtraitZunsafeZuse�where�while)ZabstractZalignofZbecomeZdo�final�macroZoffsetof�overrideZpriv�procZpure�sizeofZtypeofZunsizedZvirtual�yieldz(true|false)\bzmod\b�modnamezlet\bzfn\b�funcnamez(struct|enum|type|union)\b�typenamez(default)(\s+)(type|fn)\bzself\bz::\bz(?::|->)z&(break|continue)(\s*)(\'[A-Za-z_]\w*)?zA'(\\['"\\nrt]|\\x[0-7][0-9a-fA-F]|\\0|\\u\{[0-9a-fA-F]{1,6}\}|.)'z@b'(\\['"\\nrt]|\\x[0-9a-fA-F]{2}|\\0|\\u\{[0-9a-fA-F]{1,6}\}|.)'z0b[01_]+�
number_litz 0o[0-7_]+z0[xX][0-9a-fA-F_]+zJ[0-9][0-9_]*(\.[0-9_]+[eE][+\-]?[0-9_]+|\.[0-9_]*(?!\.)|[eE][+\-]?[0-9_]+)z[0-9][0-9_]*zb"�
bytestring�"�stringzb?r(#*)".*?"\1z'staticz
'[a-zA-Z_]\w*z
[{}()\[\],.;]z[+\-*/%&|<>^!~@=:?]z[a-zA-Z_]\w*z#!?\[z
attribute[z.([A-Za-z_]\w*)(!)(\s*)([A-Za-z_]\w*)?(\s*)(\{)zmacro{z)([A-Za-z_]\w*)(!)(\s*)([A-Za-z_]\w*)?(\()zmacro(z[^*/]+z#pushz\*/z#popz[*/]�&z[ui](8|16|32|64|size)zf(32|64)z;\\['"\\nrt]|\\x[0-7][0-9a-fA-F]|\\0|\\u\{[0-9a-fA-F]{1,6}\}z[^\\"]+z\\z\\x[89a-fA-F][0-9a-fA-F]z\{z\}z\(z\)z\[z
attribute(�attribute_commonz\];?z[^"\]]+z\);?z[^")]+)�rootr r r r3 r4 r5 r6 r9 r7 zmacro{zmacro(r; z
attribute[z
attribute(N).�__name__�
__module__�__qualname__�__doc__�name� filenames�aliasesZ mimetypesr r
ZTypeZ
keyword_typesr ZBuiltinZ
builtin_typesr ZPreprocr r r ZDoc�SingleZ MultilineZReservedZConstantZDeclarationr r ZPseudoZLabelZCharr
�Bin�OctZHexZFloatZInteger� Attributer r Z NamespaceZFunctionZClassZEscaper �tokens� rI rI �E/opt/alt/python37/lib/python3.7/site-packages/pygments/lexers/rust.pyr s�
N)r@ Zpygments.lexerr r r r r Zpygments.tokenr r r r
r r r
r r �__all__r rI rI rI rJ �<module>
s ,