
    |e-                         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 g dZ G d de      Z G d d	e      Z G d
 de      Zy)z
    pygments.lexers.actionscript
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for ActionScript and MXML.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    N)
RegexLexerbygroupsusingthiswordsdefault)	TextCommentOperatorKeywordNameStringNumberPunctuation
Whitespace)ActionScriptLexerActionScript3Lexer	MxmlLexerc                      e Zd ZdZdZddgZdgZg dZej                  Z
ddefd	ej                  fd
ej                  fdej                   fdefdef edd      ef edd      ej*                  fdej,                  f edd      ej0                  f edd      ej2                  fdej4                  fdej8                  fdej:                  fdej<                  fdej>                  fdej                  fgiZ d Z!y)r   zB
    For ActionScript source code.

    .. versionadded:: 0.9
    ActionScriptactionscriptas*.as)zapplication/x-actionscriptztext/x-actionscriptztext/actionscriptroot\s+//.*?\n	/\*.*?\*/z /(\\\\|\\[^\\]|[^/\\\n])*/[gim]*z[~^*!%&<>|+=:;,/?\\-]+z[{}\[\]();.]+)caser   foreachinwhiledobreakreturncontinueifelsethrowtrycatchvarwithnewtypeof	arguments
instanceofr   switchz\b)suffix)classpublicfinalinternalnativeoverrideprivate	protectedstaticimportextends
implements	interface	intrinsicr%   superdynamicfunctionconstget	namespacepackagesetz9(true|false|null|NaN|Infinity|-Infinity|undefined|Void)\b)AccessibilityAccessibilityPropertiesActionScriptVersionActivityEventAntiAliasTypeApplicationDomainAsBroadcasterArrayAsyncErrorEvent	AVM1MovieBevelFilterBitmap
BitmapDataBitmapDataChannelBitmapFilterBitmapFilterQualityBitmapFilterType	BlendMode
BlurFilterBoolean	ByteArrayCameraCapabilities	CapsStyleClassColorColorMatrixFilterColorTransformContextMenuContextMenuBuiltInItemsContextMenuEventContextMenuItemConvultionFilterCSMSettings	DataEventDateDefinitionErrorDeleteObjectSample
DictionaryDisplacmentMapFilterDisplayObjectDisplacmentMapFilterModeDisplayObjectContainerDropShadowFilterEndianEOFErrorError
ErrorEvent	EvalErrorEventEventDispatcher
EventPhaseExternalInterface
FileFilterFileReferenceFileReferenceListFocusDirection
FocusEventFont	FontStyleFontType
FrameLabelFullScreenEventFunction
GlowFilterGradientBevelFilterGradientGlowFilterGradientTypeGraphicsGridFitTypeHTTPStatusEventIBitmapDrawableID3Info
IDataInputIDataOutput,IDynamicPropertyOutputIDynamicPropertyWriterIEventDispatcherIExternalizableIllegalOperationErrorIMEIMEConversionModeIMEEventintInteractiveObjectInterpolationMethodInvalidSWFErrorInvokeEventIOErrorIOErrorEvent
JointStyleKeyKeyboardKeyboardEventKeyLocationLineScaleModeLoaderLoaderContext
LoaderInfoLoadVarsLocalConnectionLocaleMathMatrixMemoryError
Microphone
MorphShapeMouse
MouseEvent	MovieClipMovieClipLoader	NamespaceNetConnectionNetStatusEvent	NetStreamNewObjectSampler   ObjectObjectEncodingPixelSnappingPointPrintJobPrintJobOptionsPrintJobOrientationProgressEventProxyQName
RangeError	RectangleReferenceErrorRegExp	ResponderSampleSceneScriptTimeoutErrorSecuritySecurityDomainSecurityErrorSecurityErrorEventSecurityPanel	SelectionShapeSharedObjectSharedObjectFlushStatusSimpleButtonSocketSoundSoundChannelSoundLoaderContext
SoundMixerSoundTransformSpreadMethodSprite
StackFrameStackOverflowErrorStage
StageAlignStageDisplayStateStageQualityStageScaleMode
StaticTextStatusEventr   
StyleSheet
SWFVersion	SyncEventSyntaxErrorSystemTextColorType	TextFieldTextFieldAutoSizeTextFieldType
TextFormatTextFormatAlignTextLineMetricsTextRendererTextSnapshotTimer
TimerEvent	Transform	TypeErroruintURIError	URLLoaderURLLoaderDataFormat
URLRequestURLRequestHeaderURLRequestMethod	URLStreamURLVariabelesVerifyErrorVideoXMLXMLDocumentXMLListXMLNodeXMLNodeType	XMLSocketXMLUI)	decodeURIdecodeURIComponent	encodeURIescapeevalisFiniteisNaN	isXMLNameclearInterval	fscommandgetTimergetURL
getVersion
parseFloatparseIntsetIntervaltraceupdateAfterEventunescape[$a-zA-Z_]\w*%[0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?0x[0-9a-f]+[0-9]+"(\\\\|\\[^\\]|[^"\\])*"'(\\\\|\\[^\\]|[^'\\])*'c                      y)zThis is only used to disambiguate between ActionScript and
        ActionScript3. We return 0 here; the ActionScript3 lexer will match
        AS3 variable definitions and that will hopefully suffice.r    texts    >/usr/lib/python3/dist-packages/pygments/lexers/actionscript.pyanalyse_textzActionScriptLexer.analyse_textp   s         N)"__name__
__module____qualname____doc__namealiases	filenames	mimetypesreDOTALLflagsr   r
   Single	Multiliner   Regexr   r   r   r   DeclarationConstantr   Builtinr   Otherr   FloatHexIntegerDoubletokensr,  r(  r-  r+  r   r      sl    Dt$GI&I IIEZ (7,,-0&,,?&1{+  #(	)
   / 8=	>
   " J 'N "'O'(P \\Q(R   %*	+
 ]] tzz*5v||DVZZ('(&--8(&--8SJ
LF\r-  r   c                      e Zd ZdZdZdZddgZdgZg dZdZ	e	d	z   Z
ej                  ej                  z  Zd
efde	z   dz    eej$                  ej(                  ee      dfde	z   dz   e
z   dz    eej$                  eeeeeej0                        fde	z   dz    eeeej2                  e      fde
z   dz    eeeej0                  ee      fdej6                  fdej8                  fdej<                  fde	z   dz    eeej>                        fdefdej$                  fdej@                  fdej(                  fe	efde!jD                  fde!jF                  fde!jH                  fdejJ                  fd ej6                  fd!efgd
efd"e	z   dz   e
z   d#z    eeeeeeeej0                  e      d$fd%ed&fgd'e
z   d(z    eeeeej0                        d)fd
ed)f e&d)      gd* eee e'e(      ee      d+fd,ed+f e&d+      gd-Z)d. Z*y/)0r   zE
    For ActionScript 3 source code.

    .. versionadded:: 0.11
    zActionScript 3zNhttps://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/index.htmlactionscript3as3r   )zapplication/x-actionscript3ztext/x-actionscript3ztext/actionscript3r!  z(?:\.<\w+>)?r   z(function\s+)(z
)(\s*)(\()
funcparamsz(var|const)(\s+)(z)(\s*)(:)(\s*)()z(import|package)(\s+)((?:z|\.)+)(\s*)z(new)(\s+)(r   r   z /(\\\\|\\[^\\]|[^\\\n])*/[gisx]*z(\.)(z(case|default|for|each|in|while|do|break|return|continue|if|else|throw|try|catch|with|new|typeof|arguments|instanceof|this|switch|import|include|as|is)\bz(class|public|final|internal|native|override|private|protected|static|import|extends|implements|interface|intrinsic|return|super|dynamic|function|const|get|namespace|package|set)\bz9(true|false|null|NaN|Infinity|-Infinity|undefined|void)\bz(decodeURI|decodeURIComponent|encodeURI|escape|eval|isFinite|isNaN|isXMLName|clearInterval|fscommand|getTimer|getURL|getVersion|isFinite|parseFloat|parseInt|setInterval|trace|updateAfterEvent|unescape)\br"  r#  r$  r%  r&  z[~^*!%&<>|+=:;,/?\\{}\[\]().-]+z(\s*)(\.\.\.)?(z	|\*)(\s*)defvalz\)typez(\s*)(:)(\s*)(z|\*)z#pop:2z(=)(\s*)([^(),]+)(\s*)(,?)#pop,)r   rH  rK  rJ  c                 2    t        j                  d|       ryy)Nz\w+\s*:\s*\wg333333?r   )r6  matchr)  s    r+  r,  zActionScript3Lexer.analyse_text   s    88OT*r-  N)+r.  r/  r0  r1  r2  urlr3  r4  r5  
identifiertypeidentifierr6  r7  	MULTILINEr8  r   r   r   r<  r   r   r	   r   r   Typer   r
   r9  r:  r   r;  	Attributer=  r   r@  rA  rB  rC  r   r   r   rD  r,  r(  r-  r+  r   r   v   s    D
ZC&GI'I "J/1NII$E Z +m;g))4==$I "J.1CC"#g)):tZV`ll$% *J6Ggz4>>:FHn,}<gz7<<XNP(7,,-0&,,?
"T)8Hdnn+MN/ D   " J "]], 5v||DVZZ('(&--8(&--8/:K&
P Z *,/AA*+j+tZ:llJ019; Hf%
 /'9j(JExQT8$H	
 +h
E$KXNPVX8V$FO	
m<F|r-  r   c            	          e Zd ZdZej
                  ej                  z  ZdZdgZ	dgZ
ddgZdefdej                  fd	 ee ee      e      fd
edfdej(                  fdej(                  fdej*                  dfdej*                  fgdefdedfdefgdefdej.                  dfdej*                  dfgdefdedfdedfdedfgdZy)r   z~
    For MXML markup.
    Nested AS3 in <script> tags is highlighted by the appropriate lexer.

    .. versionadded:: 1.1
    MXMLmxmlz*.mxmlztext/xmlzapplication/xmlz[^<&]+z&\S*?;z(\<\!\[CDATA\[)(.*?)(\]\]\>)z<!--commentz	<\?.*?\?>z<![^>]*>z<\s*[\w:.-]+tagz<\s*/\s*[\w:.-]+\s*>z[^-]+z-->rL  -r   z[\w.:-]+\s*=attrz/?\s*>z".*?"z'.*?'z[^\s>]+)r   rY  rZ  r\  N)r.  r/  r0  r1  r6  rS  r7  r8  r2  r3  r4  	mimetimesr	   r   Entityr   r   r   r   r
   PreprocTagr   rU  rD  r(  r-  r+  r   r      s*    LL299$EDhG
I./I t$,fe$67@BWi(7??+)dhh.$dhh/

 gGV$'N
 Z dnnf5&)
 Z ff%ff%(	
-Fr-  r   )r1  r6  pygments.lexerr   r   r   r   r   r   pygments.tokenr	   r
   r   r   r   r   r   r   r   __all__r   r   r   r(  r-  r+  <module>rd     sV    
 L L$ $ $ C`
 `DS Sl)
 )r-  