o
    ‡ÎÖaé(  ã                   @   sj   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 dgZdZdZdZdZG d	d„ deƒZd
S )zß
    pygments.lexers.webidl
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexers for Web IDL, including some extensions.

    :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    )Ú
RegexLexerÚdefaultÚincludeÚwords)ÚCommentÚKeywordÚNameÚNumberÚPunctuationÚStringÚTextÚWebIDLLexer)ÚbyteÚoctetÚbooleanz*(?:unsigned\s+)?(?:short|long(?:\s+long)?)z$(?:unrestricted\s+)?(?:float|double)Ú	DOMStringÚ
ByteStringÚ	USVStringÚErrorÚDOMExceptionÚ
Uint8ArrayÚUint16ArrayÚUint32ArrayÚUint8ClampedArrayÚFloat32ArrayÚFloat64ArrayÚArrayBufferÚDataViewÚ	Int8ArrayÚ
Int16ArrayÚ
Int32ArrayÚanyÚvoidÚobjectÚRegExpz_?[A-Za-z][a-zA-Z0-9_-]*z	(?![\w-])z"[^"]*"c                   @   s   e Zd ZdZdZdgZdgZi ddefdej	fdej
fd	ejfg“d
edƒdedfde efde edfde edfde edfde edfde edfde edfeejdfg
“dedƒdefeejfdedfdedfd ed!fg“dedƒeed"feefded#fed!ƒg“d"edƒdedfed!ƒg“dedƒd$ed!fed%ƒg“d%edƒd&e efdedfded!fd$ed'fed(ƒg“d)edƒeejfd*efded+fed!ƒg“d#edƒeejfdefd$ed!fg“d,edƒd-d. e¡ d/ e ejd0fed1ed2�ejd3feejd3fded4fg“d4edƒd5e efd$ed6fed,ƒg“d3d7ed8fed6ƒg“d0d9efed'ƒg“d+edƒed:ƒeed!fd;ed!fg“d:edƒed<ed2�ejd!fd=ejd!fd>ejd!fd?ej d!fd@ej!d!fg“dedƒeejfdAed!fg“dedƒeej"fdBedCfdAed!fg“i dCedƒdedfdDe efdEe edFfdGe edHfdIed!fedJƒg“dedƒeejfdKefdBedLfdAed!fg“dLedMed2�edNfedOed2�efdPe edQfdAefedCƒg“dRedƒeejfdAed!fg“dSedƒeejfded:fdAed!fg“dTedƒdAed!fedUƒg“dUedƒeej#fdedfdAed'fg“dNedƒd7ed8fdAed!fg“d8edƒdefdVed!fed,ƒg“dQedƒdedWfdAed!fedUƒg“dWedƒeejd!fdBedXfdedYfg“dXedƒedZed2�efdefeejfdIed'fg“dYedƒed[ed2�efdefeejfd\ed'fg“dedƒeejfdBed]fdAed!fg“d]edƒeefdefdIed!fg“dedƒde ed^feejfded_fdAed!fg“dedƒeejfdKefdBed`fdAed!fg“¥edƒdedfdae efdIed!fedbƒgedƒeejfded+fdAed!fgedƒdce efeejfdAed!fgddœ¥Z$deS )fr   z1
    For Web IDL.

    .. versionadded:: 2.6
    zWeb IDLÚwebidlz*.webidlÚcommonz\s+z(?s)/\*.*?\*/z//.*z^#.*Úrootz\[Úextended_attributesÚpartialÚtypedef)r*   ÚtypeÚ	interfaceÚinterface_restÚenumÚ	enum_restÚcallbackÚcallback_restÚ
dictionaryÚdictionary_restÚ	namespaceÚnamespace_restÚimplements_restú,ú=Úextended_attribute_restz\(Úargument_listz\]ú#popÚextended_attribute_named_restÚidentifier_listz\)ÚargumentÚoptionalz#pop:2)Úargument_restr+   r@   z\.\.\.Údefault_valuer+   z(?:ú|ú)Ú	type_null)ÚsequenceÚPromiseÚFrozenArray)ÚsuffixÚtype_identifierÚ
union_typeÚor)r;   rD   ú<Ú	type_listz\?Úconst_valuez\[\s*\])ÚtrueÚfalsez	-InfinityÚInfinityÚNaNÚnullzQ-?(?:(?:[0-9]+\.[0-9]*|[0-9]*\.[0-9]+)(?:[Ee][+-]?[0-9]+)?|[0-9]+[Ee][+-]?[0-9]+)z-?[1-9][0-9]*z-?0[Xx][0-9A-Fa-f]+z	-?0[0-7]*ú;z\{Únamespace_bodyÚreadonlyÚ	attribute)Úattribute_restr+   Úconst)Ú
const_restr+   z\})Úoperation_restr+   ú:Úinterface_body)ÚiterableÚmaplikeÚsetlikeÚiterable_maplike_setlike_rest)	ÚsetterÚgetterÚcreatorÚdeleterÚlegacycallerÚinheritÚstaticÚstringifierÚ	jsonifierÚ
serializerÚserializer_restrX   rZ   r[   Ú	operationú>Úserialization_patternÚserialization_pattern_mapÚserialization_pattern_list)rc   rg   rW   )rc   rW   ú]Ú	enum_body)r;   r-   )rm   r+   Údictionary_bodyÚrequired)Údictionary_itemr+   Ú
implements)rt   rv   r6   N)%Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚaliasesÚ	filenamesr   r   Ú	MultilineÚSingleÚPreprocr   r
   Ú_keyword_suffixr   Ú_identifierr   ÚClassÚ	DecoratorÚ_stringr   r   ÚVariableÚjoinÚ_builtin_typesÚTyper   ÚConstantr	   ÚFloatÚIntegerÚHexÚOctÚ	NamespaceÚFunctionÚtokens© r“   r“   ú8/usr/lib/python3/dist-packages/pygments/lexers/webidl.pyr   '   sš   üÿ

öùúíûå"ýÞ'ýÙ,
úÔ4ûÌ;üÅAÿÿÿ
ù¿J
ü¶Pþ°Tþ¬Xü¨^ÿÿÿ


ø¢hý˜mü“s
ÿø�}ûƒ 
ÿþþø �û ý �ñ ü �ì ý �æ ü �á %ý �Û *ü �Ö 0ü �Ð 6
ü �Ê <ÿÿú �Ä Dû �¼ Kü �µ Qü �¯ Wÿú �© _û �¡ g
ûü
ü ��N)r{   Úpygments.lexerr   r   r   r   Úpygments.tokenr   r   r   r	   r
   r   r   Ú__all__r‰   rƒ   r‚   r†   r   r“   r“   r“   r”   Ú<module>   s    
$