Ë
    |í¼e–  ã                   ól   — d Z ddl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e«      Zy)zÜ
    pygments.lexers.carbon
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexers for the Carbon programming language.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Ú
RegexLexerÚbygroupsÚwords)	ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚ
WhitespaceÚCarbonLexerc                   ó  — e Zd ZdZdZdZdgZdgZdgZe	j                  e	j                  z  Zddefd	efd
efdej                   fdej"                  fdej&                  fdej(                  f edd¬«      efdej,                  fdej.                  fdej0                  fdej4                  fdej6                  fdej8                  fdej:                  fdej<                  fdefdej@                  fde!fde"fde#jH                  fgiZ%d„ Z&y )!r   z8
    For Carbon source.

    .. versionadded:: 2.15
    ÚCarbonz.https://github.com/carbon-language/carbon-langz*.carbonÚcarbonztext/x-carbonÚrootz\nz\s+z\\\nz	//(.*?)\nz/(\\\n)?[*].*?[*](\\\n)?/z((package|import|api|namespace|library)\bzg(abstract|alias|fn|class|interface|let|var|virtual|external|base|addr|extends|choice|constraint|impl)\b)ÚasÚorÚnotÚandÚbreakÚcontinueÚcaseÚdefaultÚifÚelseÚ
destructorÚforÚforallÚwhileÚwhereÚthenÚinÚisÚreturnÚreturnedÚfriendÚpartialÚprivateÚ	protectedÚobserveÚSelfÚoverrideÚfinalÚmatchÚtypeÚlikez\b)Úsuffixz(self)\bz(true|false)\bzA(auto|bool|string|i8|i16|i32|i64|u8|u16|u32|u64|f8|f16|f32|f64)\bz[0-9]*[.][0-9]+z0b[01]+z0o[0-7]+z0x[0-9a-fA-F]+z[0-9]+z"(\\.|[^"\\])*"z\'(\\.|[^\'\\])\'zm<<=|>>=|<<|>>|<=|>=|\+=|-=|\*=|/=|\%=|\|=|&=|\^=|&&|\|\||&|\||\+\+|--|\%|\^|\~|==|!=|::|[.]{3}|->|=>|[+\-*/&]z[|<>=!()\[\]{}.,;:\?]z
[^\W\d]\w*c                 ó¾   — d}d| v r|dz  }d| v r|dz  }d| v r|dz  }d| v r|dz  }d| v r|dz  }d| v r|dz  }d	| v r|dz  }d
| v r|dz  }d| v r|dz  }d| v r|dz  }|S )Nr   r    gš™™™™™¹?r1   r-   r,   ÚpackageÚlibraryÚchoiceÚaddrÚ
constraintÚimpl© )ÚtextÚresults     ú8/usr/lib/python3/dist-packages/pygments/lexers/carbon.pyÚanalyse_textzCarbonLexer.analyse_textJ   s²   € ØˆØ�tÑØ�c‰MˆFØ�T‰>Ø�c‰MˆFØ�T‰>Ø�c‰MˆFØ˜ÑØ�c‰MˆFØ˜ÑØ�c‰MˆFØ˜ÑØ�c‰MˆFØ�tÑØ�c‰MˆFØ�T‰>Ø�c‰MˆFØ˜4ÑØ�c‰MˆFØ�T‰>Ø�c‰MˆFØˆó    N)'Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚ	filenamesÚaliasesÚ	mimetypesÚreÚ	MULTILINEÚDOTALLÚflagsr   r   r   ÚSingleÚ	Multiliner	   Ú	NamespaceÚDeclarationr   ÚPseudoÚConstantÚTyper   ÚDoubleÚBinÚOctÚHexÚIntegerr   ÚCharr   r   r
   ÚOtherÚtokensr?   r;   r@   r>   r   r      sm  „ ñð
 €DØ
:€CØ�€IØˆj€GØ Ð!€Ià�L‰L˜2Ÿ9™9Ñ$€Eð 	Ø�JÐØ�ZÐ Ø�dˆOà˜7Ÿ>™>Ð*Ø)¨7×+<Ñ+<Ð=à8¸'×:KÑ:KÐLð<Ø=D×=PÑ=PðRñ ð Bð KPô	Qð SZð	[ð
 ˜'Ÿ.™.Ð)Ø × 0Ñ 0Ð1ð"Ø#*§<¡<ð1ð   §¡Ð/Ø˜Ÿ™Ð$Ø˜&Ÿ*™*Ð%Ø §
¡
Ð+Ø˜Ÿ™Ð'à Ð(à! 6§;¡;Ð/ð@ØAIðKà% {Ð3à˜DŸJ™JÐ'ðI%
ð'€FóRr@   )rD   rJ   Úpygments.lexerr   r   r   Úpygments.tokenr   r   r   r	   r
   r   r   r   r   Ú__all__r   r;   r@   r>   ú<module>r`      s;   ðñó 
ç 6Ñ 6÷$÷ $õ $ð ˆ/€ôM�*õ Mr@   