o
    Ñ­jt  ã                   @   sf   d Z ddl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 dgZG dd„ deƒZdS )zÙ
    pygments.lexers.supercollider
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Lexer for SuperCollider

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Ú
RegexLexerÚincludeÚwordsÚdefault)ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚSuperColliderLexerc                   @   sF  e Zd ZdZdZdZddgZddgZdd	gZd
Z	e
je
jB Zdefdefdejfdejfgedƒdejdfdedfedƒgdedfgdedfedƒdedfdedfdefeddd�edfeddd�ejdfeddd�ejfeddd�ejfed d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gd(œZ&d)d*„ Z'd+S ),r   z(
    For SuperCollider source code.
    ÚSuperColliderzhttp://supercollider.github.io/ÚsupercolliderÚscz*.scz*.scdzapplication/supercolliderztext/supercolliderz2.1z\s+z<!--z//.*?\nz	/\*.*?\*/Úcommentsandwhitespacez3/(\\.|[^[/\\\n]|\[(\\.|[^\]\\\n])*])+/([gim]+\b|\B)ú#popz(?=/))r   Úbadregexz\nz^(?=\s|/|<!--)Úslashstartsregexz@\+\+|--|~|&&|\?|:|\|\||\\(?=\n)|(<<|>>>?|==?|!=?|[-<>+*%&|^/])=?z[{(\[;,]z[})\].])ÚforÚinÚwhileÚdoÚbreakÚreturnÚcontinueÚswitchÚcaser   ÚifÚelseÚthrowÚtryÚcatchÚfinallyÚnewÚdeleteÚtypeofÚ
instanceofÚvoidz\b)Úsuffix)ÚvarÚletÚwithÚfunctionÚarg)z	(abstractÚbooleanÚbyteÚcharÚclassÚconstÚdebuggerÚdoubleÚenumÚexportÚextendsÚfinalÚfloatÚgotoÚ
implementsÚimportÚintÚ	interfaceÚlongÚnativeÚpackageÚprivateÚ	protectedÚpublicÚshortÚstaticÚsuperÚsynchronizedÚthrowsÚ	transientÚvolatile)ÚtrueÚfalseÚnilÚinf)ÚArrayÚBooleanÚDateÚErrorÚFunctionr   ÚObjectÚPackagesÚRegExpr   ÚisFiniteÚisNaNÚ
parseFloatÚparseIntrI   ÚthisFunctionDefÚthisFunctionÚ
thisMethodÚthisProcessÚ
thisThreadÚthisz[$a-zA-Z_]\w*z\\?[$a-zA-Z_]\w*z%[0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?z0x[0-9a-fA-F]+z[0-9]+z"(\\\\|\\[^\\]|[^"\\])*"z'(\\\\|\\[^\\]|[^'\\])*')r   r   r   Úrootc                 C   s   d| v sd| v r
dS dS )z@We're searching for a common function and a unique keyword here.ÚSinOscr^   gš™™™™™¹?N© )Útextrf   rf   úZ/var/www/html/CropPilot/venv/lib/python3.10/site-packages/pygments/lexers/supercollider.pyÚanalyse_text[   s   ÿzSuperColliderLexer.analyse_textN)(Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesÚversion_addedÚreÚDOTALLÚ	MULTILINEÚflagsr   r   ÚSingleÚ	Multiliner   r   ÚRegexr   r   r   r   r	   ÚDeclarationÚReservedÚConstantr
   ÚBuiltinÚOtherÚSymbolr   ÚFloatÚHexÚIntegerÚDoubleÚtokensri   rf   rf   rf   rh   r      sv    üÿûÿÿüû
ÿúùûúÛï:)rm   rt   Úpygments.lexerr   r   r   r   Úpygments.tokenr   r   r   r	   r
   r   r   r   Ú__all__r   rf   rf   rf   rh   Ú<module>   s    
(