a
    ñ»j�  ã                   @   sr   d Z ddlZddl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gZG dd„ deƒZdS )a&  
    pygments.lexers.gdscript
    ~~~~~~~~~~~~~~~~~~~~~~~~

    Lexer for GDScript.

    Modified by Daniel J. Ramirez <djrmuv@gmail.com> based on the original
    python.py.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Ú
RegexLexerÚincludeÚbygroupsÚdefaultÚwordsÚcombined)	ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚ
WhitespaceÚGDScriptLexerc                   @   sŒ  e Zd ZdZdZdZddgZdgZddgZd	Z	d
d„ Z
defdeeejejƒfdeeejejƒfdefdejfdefdeeeƒfdefdejfdefedƒdeeeƒdfdeeeƒdfedƒdeejejƒdfdeejejƒdfd eejejƒd!fd"eejejƒd#fd$eejejƒed%dƒfd&eejejƒed%dƒfd'eejejƒed%d!ƒfd(eejejƒed%d#ƒfed)ƒed*ƒged+d,d-�efged.d/d,d0�ejfd1ejjfed2d/d,d0�ejjfgd3ej fd4ej fd5ej!fd6ej"fgd7efgd7ej#d8fe$d8ƒgd7ej%d8fgd9ej&fge
ejƒe
ejƒd:ejd8fd;ej&fed<ƒgd=ejd8fd>ej&fed?ƒgd@ejd8fed<ƒdefgdAejd8fed?ƒdefgdBœZ'dCdD„ Z(dES )Fr   z#
    For GDScript source code.
    ÚGDScriptzhttps://www.godotengine.orgÚgdscriptÚgdz*.gdztext/x-gdscriptzapplication/x-gdscriptÚ c                 C   s   dt jfd| fd| fd| fgS )NzG%(\(\w+\))?[-#0 +]*([0-9]+|[*])?(\.([0-9]+|[*]))?[hlL]?[E-GXc-giorsux%]z[^\\\'"%\n]+z[\'"\\]ú%)r   ÚInterpol)Úttype© r   ú>E:\soccer\ml_env\Lib\site-packages\pygments/lexers/gdscript.pyÚinnerstring_rules$   s    þ÷zGDScriptLexer.innerstring_rulesz\nz$^(\s*)([rRuUbB]{,2})("""[\s\S]*?""")z$^(\s*)([rRuUbB]{,2})('''[\s\S]*?''')z[^\S\n]+z#.*$z[]{}:(),;[]z(\\)(\n)z\\z(in|and|or|not)\bz=!=|==|<<|>>|&&|\+=|-=|\*=|/=|%=|&=|\|=|\|\||[-~+/*%=<>&^.!|$]Úkeywordsz(func)(\s+)Úfuncnamez(class)(\s+)Ú	classnameÚbuiltinsz!([rR]|[uUbB][rR]|[rR][uUbB])(""")Útdqsz!([rR]|[uUbB][rR]|[rR][uUbB])(''')Útsqsz([rR]|[uUbB][rR]|[rR][uUbB])(")Údqsz([rR]|[uUbB][rR]|[rR][uUbB])(')Úsqsz([uUbB]?)(""")Ústringescapez([uUbB]?)(''')z([uUbB]?)(")z([uUbB]?)(')ÚnameÚnumbers)$ÚandÚinÚnotÚorÚasÚ
breakpointÚclassÚ
class_nameZextendsÚisÚfuncZsetgetÚsignalZtoolÚconstÚenumZexportZonreadyZstaticÚvarÚbreakÚcontinueÚifÚelifÚelseÚforÚpassÚreturnÚmatchÚwhileÚremoteZmasterÚpuppetZ
remotesyncZ
mastersyncZ
puppetsyncz\b)Úsuffix)GZColor8ZColorNÚabsÚacosÚasinÚassertÚatanÚatan2Z	bytes2varÚceilÚcharÚclampÚconvertÚcosÚcoshZ	db2linearZdecimalsZdectimeZdeg2radZ	dict2instZeaseÚexpÚfloorÚfmodZfposmodZfuncrefÚhashZ	inst2dictZinstance_from_idZis_infÚis_nanZlerpZ	linear2dbÚloadÚlogÚmaxÚminZnearest_po2ÚpowZpreloadÚprintÚprint_stackZprinterrZprintrawZprintsZprinttZrad2degZ
rand_rangeZ	rand_seedZrandfZrandiZ	randomizeÚrangeÚroundÚseedÚsignÚsinÚsinhÚsqrtZstepifyÚstrZstr2varÚtanrb   ÚtanhZ
type_existZtypeofZ	var2bytesZvar2strÚweakrefÚyieldz(?<!\.))ÚprefixrA   z-((?<!\.)(self|false|true)|(PI|TAU|NAN|INF))\b)ÚboolÚintÚfloatr   ÚNodePathZVector2ZRect2ZTransform2DZVector3ZRect3ZPlaneZQuatZBasisZ	TransformÚColorZRIDZObjectrj   Z
DictionaryÚArrayZPackedByteArrayZPackedInt32ArrayZPackedInt64ArrayZPackedFloat32ArrayZPackedFloat64ArrayZPackedStringArrayZPackedVector2ArrayZPackedVector3ArrayZPackedColorArrayÚnullZvoidz'(\d+\.\d*|\d*\.\d+)([eE][+-]?[0-9]+)?j?z\d+[eE][+-]?[0-9]+j?z0[xX][a-fA-F0-9]+z\d+j?z[a-zA-Z_]\w*z#popzY\\([\\abfnrtv"\']|\n|N\{.*?\}|u[a-fA-F0-9]{4}|U[a-fA-F0-9]{8}|x[a-fA-F0-9]{2}|[0-7]{1,3})ú"z\\\\|\\"|\\\nústrings-doubleú'z\\\\|\\'|\\\nústrings-singlez"""z''')Úrootr   r   r&   r%   r   r   r$   rq   ro   r"   r#   r    r!   c                 C   sJ   d}t  d| ¡r|d7 }t  d| ¡r,|d7 }t  d| ¡r@|d7 }t|dƒS )	Ng        z4func (_ready|_init|_input|_process|_unhandled_input)gš™™™™™é?z=(extends |class_name |onready |preload|load|setget|func [^_])gš™™™™™Ù?z#(var|const|enum|export|signal|tool)gš™™™™™É?g      ð?)ÚreÚsearchrV   )ÚtextZscorer   r   r   Úanalyse_text¬   s    ÿþzGDScriptLexer.analyse_textN))Ú__name__Ú
__module__Ú__qualname__Ú__doc__r%   ÚurlÚaliasesÚ	filenamesÚ	mimetypesÚversion_addedr   r   r   r   ÚAffixÚDocr	   ÚSingler   r   r
   ÚWordr   r   ÚDoubler   r   r   ÚBuiltinÚPseudoÚTyper   ÚFloatÚHexÚIntegerÚFunctionr   ÚClassÚEscapeÚtokensrv   r   r   r   r   r      sæ   ÿÿÿþþþþþþþþÕ.úúÿ
ôóÿùøïüýÿ
ý
ý
ý
ý�z)rz   rs   Zpygments.lexerr   r   r   r   r   r   Zpygments.tokenr   r	   r
   r   r   r   r   r   r   Ú__all__r   r   r   r   r   Ú<module>   s
    ,