o
    \hD                      @   sf   d Z ddlmZ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.rust
    ~~~~~~~~~~~~~~~~~~~~

    Lexers for the Rust language.

    :copyright: Copyright 2006-2025 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                   @   st  e Zd ZdZdZdZddgZddgZdd	gZd
Z	e
dddejfZe
dddejfZe
dddejjfZdejfedgg defdefdejfdejfdejfdejdfdejdfdejdfdejfe
dddefe
dddejfd ejfd!ejjfd"ed#fd$ejfd%ed&fd'ed(fd)e eeefed*ejjfeed+e!fd,e!d(fd-e ee"jej#fd.ej$fd/ej$fd0e%j&d1fd2e%j'd1fd3e%j(d1fd4e%j)d1fd5e%j*d1fd6ed7fd8ed9fd:efd;e+d<fd=e+fd>e!fd?e+fd@efdAefdBejdCfdDe!fdEejfdejdFfdGejdHfdIejfgdEejfdejdFfdGejdHfdIejfgdefd@ej,dHfedHgdefd@ejdHfedHgdefdJejfd;e+d<feed@ej-dHfedHgdKejfdLej.fedHgdMedHfdNedHfedHgd8edHfdOej/fdPefdQefgdRej/fe0d9gd8ed9fdSejdCfge0dTdUejdHfdVejfgdWZ1dXS )Yr   zA
    Lexer for the Rust programming language (version 1.47).
    Rustzhttps://www.rust-lang.org/z*.rsz*.rs.inrustrsz	text/rustztext/x-rustz1.6)u8u16u32u64u128i8i16i32i64i128usizeisizef32f64charstrboolz\b)suffix)$CopySendSizedSyncUnpinDropFnFnMutFnOncedropBoxToOwnedClone	PartialEq
PartialOrdEqOrdAsRefAsMutIntoFromDefaultIteratorExtendIntoIteratorDoubleEndedIteratorExactSizeIteratorOptionSomeNoneResultOkErrr   ToStringVec)2asmassert	assert_eq	assert_necfgcolumncompile_errorconcatconcat_identsdbgdebug_assertdebug_assert_eqdebug_assert_neenveprinteprintlnfileformatformat_argsformat_args_nl
global_asmr   include_bytesinclude_stris_aarch64_feature_detectedis_arm_feature_detectedis_mips64_feature_detectedis_mips_feature_detectedis_powerpc64_feature_detectedis_powerpc_feature_detectedis_x86_feature_detectedlinellvm_asm
log_syntaxmacro_rulesmatchesmodule_path
option_envpanicprintprintln	stringifythread_localtodotrace_macrosunimplementedunreachablevecwritewriteln!z#![^[\r\n].*$basez\nz\s+z//!.*?\nz///(\n|[^/].*?\n)z	//(.*?)\nz/\*\*(\n|[^/*])
doccommentz/\*!z/\*commentz\$([a-zA-Z_]\w*|\(,?|\),?|,?))asasyncawaitboxconstcratedynelseexternforifimplinloopmatchmovemutpubrefreturnstaticsupertraitunsafeusewherewhile)abstractbecomedofinalmacrooverrideprivtypeoftryunsizedvirtualyieldz(true|false)\bzself\bzmod\bmodnamezlet\bzfn\bfuncnamez(struct|enum|type|union)\btypenamez(default)(\s+)(type|fn)\bz	[sS]elf\bz::\bz(?::|->)z((break|continue)(\b\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}\}|.)'z0b[01_]+
number_litz	0o[0-7_]+z0[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_]*zb"
bytestring"stringz(?s)b?r(#*)".*?"\1'lifetimez\.\.=?z[{}()\[\],.;]z[+\-*/%&|<>^!~@=:?]z[a-zA-Z_]\w*zr#[a-zA-Z_]\w*z#!?\[
attribute[#z[^*/]+z#pushz\*/z#popz[*/]&z
(static|_)z[a-zA-Z_]+\w*z[ui](8|16|32|64|size)zf(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\[attribute_commonz\]z	[^"\]\[]+)rootr{   r}   r|   r   r   r   r   r   r   r   r   r   N)2__name__
__module____qualname____doc__nameurl	filenamesaliases	mimetypesversion_addedr   r
   Typekeyword_typesr   Builtinbuiltin_funcs_typesFunctionMagicbuiltin_macrosr   Preprocr   r   r   DocSingle	MultilineReservedConstantPseudoDeclarationr   r   r   LabelCharr   BinOctHexFloatIntegerr	   	NamespaceClass	AttributeEscaper   tokens r   r   W/home/air/segue/gemini/backup/venv/lib/python3.10/site-packages/pygments/lexers/rust.pyr      sn   


	

 !#%'+.
3
5
79
<?@ADGHILN
QVY









 
N)r   pygments.lexerr   r   r   r   r   pygments.tokenr   r   r	   r
   r   r   r   r   r   __all__r   r   r   r   r   <module>   s
    
,