o
    	ȷe)                     @   s|   d Z ddl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mZmZ ddgZG dd deZG dd deZdS )	z
    pygments.lexers.mcfunction
    ~~~~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for MCFunction and related languages.

    :copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerdefaultincludebygroups)CommentKeywordLiteralNameNumberOperatorPunctuationStringTextToken
Whitespace	SNBTLexerMCFunctionLexerc                   @   s&  e Zd ZdZdZdZdgZdgZdgZde	dfd	e
fgd
efgde	fgdejfdejfdejfdejfdejdfdejdfgdejfdejfdejdfgdejfdejfdejdfgdejfedededde	dfde	dfde	dfgdejfedededde	dfde	dfd e	dfgd!Zd"S )#r   z]Lexer for stringified NBT, a data format used in Minecraft

    .. versionadded:: 2.12.0
    SNBTz,https://minecraft.fandom.com/wiki/NBT_formatsnbtz*.snbtz	text/snbt\{compoundz[^\{]+\s+z[,:;](true|false)z-?\d+[eE]-?\d+z-?\d*\.\d+[fFdD]?z-?\d+[bBsSlLfFdD]?"literals.string_double'literals.string_single\\.	[^\\"\n]+#pop	[^\\'\n]+z
[A-Z_a-z]+	operators
whitespaceliteralsz#push\[list\}\])rootr"   r!   r#   r   r   r   r%   N)__name__
__module____qualname____doc__nameurlaliases	filenames	mimetypesr   r   r   r   Constantr
   FloatIntegerr   DoubleSingleEscaper	   	Attributer   tokens r:   r:   Q/var/www/ideatree/venv/lib/python3.10/site-packages/pygments/lexers/mcfunction.pyr      s\    



	
c                   @   s0  e Zd ZdZdZdZddgZdgZdgZdZ	i d	e
d
e
de
de
de
de
de
dgd
deeejfdejfdejfe
ddejfdejjfgddejfdejfgddefgdde	 dejdfdejfgdde	 ejd fdejd!fed"gd!e
d#d$ejfd%ed"fe
dgd e
d#d$ejfd%ed"fe
dgd#d&ejfe
ddejjfgdd'efgdd(efd)ejfd*ejjfd+e j!fd,e j"fd-e j#fd.ej$d/fd0ejd1fgd/d2ej%fd3ej$fd.ej$d"fgd1d2ej%fd4ejfd0ejd"fgdd5ejfgdd6e&d7fd8e&d9fgd:e
de
dd;e&d"fgd<e
de
dd=e&d"fd>e&fge
dd?ej'd@fdAej'd@fdBej'd@fd.ej'd@d/fd0ej'd@d1fdCe j#d@fed"gd2ej%fd3ej'fd.ej'd"fgd2ej%fd4ej'fd0ej'd"fge
ddDe&dEfd>e&fed"ge
ddFej(fdAej(fe
de
ded"gdGZ)dHS )Ir   zLexer for the mcfunction scripting language used in Minecraft
    Modelled somewhat after the `GitHub mcfunction grammar <https://github.com/Arcensoth/language-mcfunction>`_.

    .. versionadded:: 2.12.0
    
MCFunctionz*https://minecraft.fandom.com/wiki/Commands
mcfunctionmcfz*.mcfunctionztext/mcfunctionz[>!]r(   namescommentsr#   r"   propertyr!   	selectorsz^(\s*)([a-z_]+)z(?<=run)\s+[a-z_]+z$\b[0-9a-fA-F]+(?:-[0-9a-fA-F]+){4}\bzresource-namez[A-Za-z_][A-Za-z0-9_.#%$]+z[#%$][A-Za-z0-9_.#%$]+z#?[a-z_][a-z_.-]*:[a-z0-9_./-]+z"#?[a-z0-9_\.\-]+\/[a-z0-9_\.\-\/]+r   z^\s*(#))comments.blockcomments.block.emphasizedz#.*$rD   z^\s*#rE   zcomments.block.normalr   zcomments.block.specialz\S+z\nz@\S+z[\-~%^?!+*<>\\/|&=.]z\.\.r   z
[A-Za-z_]+z[0-7]bz%[+-]?\d*\.?\d+([eE]?[+-]?\d+)?[df]?\bz
[+-]?\d+\br   zliterals.string-doubler   zliterals.string-singler   r   r    z@[a-z]r   )property.curlyproperty.keyr$   )property.squarerG   rF   r&   rH   r'   ,z-#?[a-z_][a-z_\.\-]*\:[a-z0-9_\.\-/]+(?=\s*\=)property.delimiterz#?[a-z_][a-z0-9_\.\-/]+z[A-Za-z_\-\+]+z-?\d+z[:=]!?property.valuez$#?[a-z_][a-z_\.\-]*\:[a-z0-9_\.\-/]+)rG   zproperty.key.string-doublezproperty.key.string-singlerJ   rK   N)*r)   r*   r+   r,   r-   r.   r/   r0   r1   _block_comment_prefixr   r   r   r	   BuiltinVariabler   r2   MagicFunctionr   	Multiliner6   r   r   r   Doc	Decoratorr   r   PseudoClassr
   Byter3   r4   r5   r7   r   r8   Tagr9   r:   r:   r:   r;   r   ]   sH   
,0
;
@FL
VZ


g
l
r       &





	 N)r,   pygments.lexerr   r   r   r   pygments.tokenr   r   r   r	   r
   r   r   r   r   r   r   __all__r   r   r:   r:   r:   r;   <module>   s    
4I