
    ,                         S r SSKJrJrJrJrJrJrJr  SSK	J
r
JrJrJrJrJrJrJrJr  SSKJrJr  S/r " S S\5      rg)z
pygments.lexers.arturo
~~~~~~~~~~~~~~~~~~~~~~

Lexer for the Arturo language.

:copyright: Copyright 2006-2023 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                      \ rS rSrSrSrSS/rS/rSrS r	S	 r
S
\R                  4S\R                  4\" SSS9\R                   4\" SSSS9\R"                  R$                  4S\R(                  4S\R*                  4S\R                   4S\R.                  4S\R0                  4S\R2                  4S\R6                  4S\R8                  4S\R:                  4S\" \\ " \!5      \5      4S\RD                  S4S\R                  S4S \RD                  S!4S"\R                  S#4S$\RD                  S%4S&\
4S'\R                  S(4S)\R                  S*4\#" S+5      S,\4\" S-5      \RH                  4\" S.5      \%4S/\4S0\&RN                  4S1\(4/S2\RR                  S34S4\ " \!5      4/S5\RR                  S34S4\ " \!5      4/\" S65      \RT                  4/\#" S75      S2\RR                  S84S9\RR                  S:4S\RD                  S34S;\4/\#" S75      S2\RR                  S84S9\RR                  S:4S<\R                  S34S=\4/\#" S75      S2\RR                  S84S9\RR                  S:4S>\RD                  S34S?\4/S@\RT                  4S2\RR                  S84S9\RR                  S:4SA\R                  S34SB\RV                  4/\#" S75      S2\RR                  S84S9\RR                  S:4SC\RD                  S34SD\4/\#" S75      S2\RR                  S84S9\RR                  S:4SE\R                  S34SF\4/\#" S75      S2\RR                  S84S9\RR                  S:4SG\R                  S34SH\4/\" SISSJS9\R"                  4\" SKSSS9\R"                  4/SL.r,SMr-gN)Or      z
For Arturo source code.

See `Arturo's Github <https://github.com/arturo-lang/arturo>`_
and `Arturo's Website <https://arturo-lang.io/>`_.

.. versionadded:: 2.14.0
Arturoarturoartz*.artzhttps://arturo-lang.io/c                 V    [        USS5      U l        [        R                  " U 40 UD6  g )Nhandle_annotatedsT)r   r   r   __init__)selfoptionss     )lib/third_party/pygments/lexers/arturo.pyr   ArturoLexer.__init__$   s*    !-g7J.2"4D,G,    c              #   P  #    SSK Jn  UR                  S5      [        R                  UR                  S5      4v   UR                  S5      [        R                  UR                  S5      4v   UR                  S5      [        R                  UR                  S5      4v   UR                  S5      [        R                  UR                  S5      4v   SnU R                  (       a&   U" UR                  S5      R                  5       5      nUR                  S5      nUc  UR                  S5      [        U4v   O#[        / UR                  U5      5       Sh  vN   UR                  S	5      [        R                  UR                  S	5      4v   g! [         a     Nf = f NH7f)
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_strings$ArturoLexer.handle_annotated_strings)   s=     	6 kk!nfmmu{{1~==kk!nfoou{{1~==kk!nfoou{{1~==kk!ndoou{{1~==!!)%++a.*>*>*@A {{1~=++a.&$..$R)E)Ed)KLLLkk!nfmmU[[^;; !  Ms7   C&F&)%F AF&F$8F&
F!F& F!!F&z;.*?$z^((\s#!)|(#!)).*?$)falsetruemaybez\b)suffix)r   initz\b\??:?)prefixr;   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//rH   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[^|"]+r]   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existsr8   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subsetr;   supersetymbolr9   trytypeunlessupperwhen
whitespacewordxnorxorzeroz\b\?)absacosacoshacsecacsechactanactanhaddafteralphabetrb   angleappendargargsarityarrayasasecasechasinasinhatanatan2atanhre   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	deviationrm   
differencedigestdigitsdivdodownloaddropdupeelsern   encodeensureenvepsilonescapeexecuteexitexpextendextractfactorsr8   fdivfilterfirstflattenfloorfoldfromrt   gammagcdgetgotohashhelphypotrw   rx   incindentindexinfinityinfoinputinsertinspectintersectioninvertjoinkeyskurtosislastletlevenshteinlightenlistlnlogloopr   mailmapr3   maxr:   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stackr1   subr;   sumswitchsymbolssymlinksystaketantanhterminaltor9   truncater   r   unionuniquer   untilunzipr   valuesvarvariancevolumewebviewwhilewithwordwrapwriter   r   zip)rootr_   r`   r^   r?   rA   rB   rC   rD   rE   rF   rG   )r   N).__name__
__module____qualname____firstlineno____doc__namealiases	filenamesurlr   r6   r
   SingleHashbangr	   r   ConstantBuiltinPseudor   CharPropertyr   FloatIntegerLabelr   DeclarationType	Attributer   r   r   r   r-   r   	Decoratorr   r   r0   r   r/   EscapeRegextokens__static_attributes__ r"   r    r   r      s    DG	I
#C-
 <H w~~&"G$4$45 -!"&--1#
459\\5H5HJV[[!dmm,dmm$ &,,/&..)4::& '"5"56w||$DNN+  k5;<> V]]$:;fmm%:;';<fmm%:; fmm%?@35MNFMM#89':;'( +& / 015A * + -56 tT__%UOm7
t FOOV,uT{#

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

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

 O$FOO%67):;6==&)!
 O$FOO%67):;FMM6*  
 O$FOO%67):;v. 
 ,V]];FOO%67):;fmmV,& 
 O$FOO%67):;fmmV, %
 O$FOO%67):;FMM6*  
 O$FOO%67):;FMM6*
   G- /3ll<  %J EK%+J -1LLK%:5
qoFr"   N)rv  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     sB        6/e* er"   