
    Mh,                         d Z ddlmZmZ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dlmZmZ dgZ G d de          ZdS )z
    pygments.lexers.arturo
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexer for the Arturo language.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroupsdo_insertionsincludethisusingwords)	CommentErrorKeywordNameNumberOperatorPunctuationStringText)ClassNotFoundget_bool_optArturoLexerc                   |   e Zd ZdZdZddgZdgZdZdZd Z	d	 Z
d
ej        fdej        f edd          ej        f eddd          ej        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j        fdej        fdej        fd ee e e!          e          fdej"        dfdej        dfd ej"        d!fd"ej        d#fd$ej"        d%fd&e
fd'ej        d(fd)ej        d*f e#d+          d,ef ed-          ej$        f ed.          e%fd/efd0e&j'        fd1e(fgd2ej)        d3fd4 e e!          fgd5ej)        d3fd4 e e!          fg ed6          ej*        fg e#d7          d2ej)        d8fd9ej)        d:fdej"        d3fd;efg e#d7          d2ej)        d8fd9ej)        d:fd<ej        d3fd=efg e#d7          d2ej)        d8fd9ej)        d:fd>ej"        d3fd?efgd@ej*        fd2ej)        d8fd9ej)        d:fdAej        d3fdBej+        fg e#d7          d2ej)        d8fd9ej)        d:fdCej"        d3fdDefg e#d7          d2ej)        d8fd9ej)        d:fdEej        d3fdFefg e#d7          d2ej)        d8fd9ej)        d:fdGej        d3fdHefg edIddJ          ej        f edKdd          ej        fgdLZ,dMS )Nr   z
    For Arturo source code.

    See `Arturo's Github <https://github.com/arturo-lang/arturo>`_
    and `Arturo's Website <https://arturo-lang.io/>`_.
    Arturoarturoartz*.artzhttps://arturo-lang.io/z2.14c                 V    t          |dd          | _        t          j        | fi | d S )Nhandle_annotatedsT)r   r   r   __init__)selfoptionss     V/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pygments/lexers/arturo.pyr   zArturoLexer.__init__#   s;    !-g7J.2"4 "4D,,G,,,,,    c              #     K   ddl m} |                    d          t          j        |                    d          fV  |                    d          t          j        |                    d          fV  |                    d          t          j        |                    d          fV  |                    d          t          j        |                    d          fV  d}| j	        rB	  ||                    d          
                                          }n# t          $ r Y nw xY w|                    d          }| |                    d          t          |fV  n)t          g |                    |                    E d{V  |                    d	          t          j        |                    d	          fV  dS )
zAdds syntax from another languages inside annotated strings

        match args:
            1:open_string,
            2:exclamation_mark,
            3:lang_name,
            4:space_or_newline,
            5:code,
            6:close_string
        r   )get_lexer_by_name            N      )pygments.lexersr"   startr   DoublegroupInterpolr   
Whitespacer   stripr   r   get_tokens_unprocessed)r   matchr"   lexercodes        r   handle_annotated_stringsz$ArturoLexer.handle_annotated_strings(   s      	655555 kk!nnfmu{{1~~====kk!nnfou{{1~~====kk!nnfou{{1~~====kk!nndou{{1~~====! 	))%++a..*>*>*@*@AA    {{1~~=++a..&$.....$R)E)Ed)K)KLLLLLLLLLkk!nnfmU[[^^;;;;;;s   /0D   
D-,D-z;.*?$z^((\s#!)|(#!)).*?$)falsetruemaybez\b)suffix)r   initz\b\??:?)prefixr8   z`.`z\\\w+\b\??:?z#\w+z\b[0-9]+\.[0-9]+z\b[0-9]+z	\w+\b\??:z\'(?:\w+\b\??:?)z\:\w+z
\.\w+\??:?z(\()(.*?)(\)\?)"inside-simple-string   »inside-smart-stringu   «««inside-safe-stringz\{\/inside-regex-stringz\{\:inside-curly-verb-stringz#(\{)(\!)(\w+)(\s|\n)([\w\W]*?)(^\})z\{inside-curly-stringz\-{3,}inside-eof-stringbuiltin-functionsz[()[\],])z->==>|z::@#$&!z!!z./)$z<:z:>z:<z>:z<\z<><>   øu   ∞+-*~=^%/z//rE   z<=>z<==>z=>>z<<=>>z<<==>>z-->z<->z<-->z=|z|=z-:z:-_.z..\z\b\w+z\s+z.+$z\|z#popz[^|]+z\|\|\>)z\\\nz\tz\"string-escapeinside-interpolz\<\|\|inside-templatez[^|"]+rZ   z[^|\n]+u   »»»u   [^|»]+z\\[sSwWdDbBZApPxucItnvfr0]+z\/\}z[^|\/]+z\:\}z[^|<:]+z\}z[^|<}]+z\Zz[^|<]+)Fallandanyasciiattr	attributeattributeLabelbinary	blockcharcontainsdatabasedate
dictionaryemptyequaleveneveryexistsr5   floatinfunctiongreatergreaterOrEqualifininlineintegeriskeylabelleaplesslessOrEqualliterallogicallowernandnegativenornotnotEqualnullnumericoddorpath	pathLabelpositiver:   primesetsomesorted
standalonestringsubsetr8   supersetymbolr6   trytypeunlessupperwhen
whitespacewordxnorxorzeroz\b\?)absacosacoshacsecacsechactanactanhaddafteralphabetr_   angleappendargargsarityarrayasasecasechasinasinhatanatan2atanhrb   attrsaveragebefore	benchmarkblendbreak	builtins1	builtins2call
capitalizecaseceilchopchunkclearcloseclustercolorcombineconjcontinuecopycoscoshcouplecseccsechctanctanhcursordarkendecdecodedecoupledefinedelete
desaturate	deviationrj   
differencedigestdigitsdivdodownloaddropdupeelserk   encodeensureenvepsilonescapeexecuteexitexpextendextractfactorsr5   fdivfilterfirstflattenfloorfoldfromrq   gammagcdgetgotohashhelphypotrt   ru   incindentindexinfinityinfoinputinsertinspectintersectioninvertjoinkeyskurtosislastletlevenshteinlightenlistlnlogloopr   mailmapr1   maxr7   medianminmodmodulemulr   negnewr   	normalizer   nowr   openr   outdentpadpanicr   pausepermissions	permutatepipoppowpowersetpowmodr:   printprintsprocessproductqueryrandomrangereadrelativeremoverenamerenderrepeatreplacerequestreturnreverseroundsamplesaturatescriptsecsechselectserver   shlshrshufflesinsinhsizeskewnessslicesortsplitsqrtsqueezestackr/   subr8   sumswitchsymbolssymlinksystaketantanhterminaltor6   truncater   r   unionuniquer   untilunzipr   valuesvarvariancevolumewebviewwhilewithwordwrapwriter   r   zip)rootr\   r]   r[   r<   r>   r?   r@   rA   rB   rC   rD   N)-__name__
__module____qualname____doc__namealiases	filenamesurlversion_addedr   r4   r
   SingleHashbangr	   r   ConstantBuiltinPseudor   CharPropertyr   FloatIntegerLabelr   DeclarationType	Attributer   r   r   r   r+   r   	Decoratorr   r   r.   r   r-   EscapeRegextokens r    r   r   r      s         DG	I
#CM- - -
 <  <  <H w~&"G$45 U-! ! !"&-1U#
4 4 459\5HJV[!dm,dm$ &,/&.)4:& '"56w|$DN+  Xk55;;<<> V]$:;fm%:;';<fm%:; fm%?@35MNFM#89':;G'(( +&U / 0 015AU * + + -56 tT_%UOm7
t FOV,uuT{{#

 0uuT{{#

 U0116=A

 GO$$FO%67):;6=&)!
 GO$$FO%67):;FM6*  
 GO$$FO%67):;v. 
 ,V];FO%67):;fmV,& 
 GO$$FO%67):;fmV, %
 GO$$FO%67):;FM6*  
 GO$$FO%67):;FM6*
 U  G- - - /3l< U %J EK%+ %+ %+J -1LK%:5
qo oFFFr    N)rr  pygments.lexerr   r   r   r   r   r   r	   pygments.tokenr
   r   r   r   r   r   r   r   r   pygments.utilr   r   __all__r   r  r    r   <module>r     s6                                          6 5 5 5 5 5 5 5/d d d d d* d d d d dr    