a
    ;@bm                     @   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-2021 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                   @   s>  e Zd ZdZdZddgZddgZddg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   zh
    For `SuperCollider <http://supercollider.github.io/>`_ source code.

    .. versionadded:: 2.1
    ZSuperColliderZsupercolliderZscz*.scz*.scdzapplication/supercolliderztext/supercolliderz\s+z<!--z//.*?\nz	/\*.*?\*/commentsandwhitespacez3/(\\.|[^[/\\\n]|\[(\\.|[^\]\\\n])*])+/([gim]+\b|\B)#popz(?=/))r   badregexz\nz^(?=\s|/|<!--)slashstartsregexz@\+\+|--|~|&&|\?|:|\|\||\\(?=\n)|(<<|>>>?|==?|!=?|[-<>+*%&|^/])=?z[{(\[;,]z[})\].])forinwhileZdobreakreturncontinueZswitchZcaser   ifelsethrowtryZcatchfinallynewdeleteZtypeofZ
instanceofZvoidz\b)suffix)varZletwithfunctionarg)z	(abstractZbooleanZbytecharclassconstZdebuggerZdoubleenumZexportZextendsfinalfloatZgotoZ
implementsimportintZ	interfaceZlongZnativepackageZprivateZ	protectedZpublicZshortZstaticsuperZsynchronizedZthrowsZ	transientZvolatile)trueZfalseZnilinf)ZArrayZBooleanZDateErrorZFunctionr   ZObjectZPackagesZRegExpr   ZisFiniteZisNaNZ
parseFloatZparseIntr.   thisFunctionDefZthisFunctionZ
thisMethodZthisProcessZ
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.ZSinOscr2   g?N )textr5   r5   <lib/python3.9/site-packages/pygments/lexers/supercollider.pyanalyse_text[   s    zSuperColliderLexer.analyse_textN)&__name__
__module____qualname____doc__namealiases	filenamesZ	mimetypesreDOTALL	MULTILINEflagsr   r   SingleZ	Multiliner   r   ZRegexr   r   r   r   r	   ZDeclarationZReservedZConstantr
   ZBuiltinZOtherZSymbolr   ZFloatZHexZIntegerDoubletokensr8   r5   r5   r5   r7   r      sp   
:)r<   r@   Zpygments.lexerr   r   r   r   Zpygments.tokenr   r   r   r	   r
   r   r   r   __all__r   r5   r5   r5   r7   <module>   s
   
(