o
    Ñ­jú'  ã                   @   s~   d Z ddlmZ ddlmZ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mZ dgZG dd„ deƒZdS )zÒ
    pygments.lexers.fantom
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexer for the Fantom language.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    )ÚTemplate)Ú
RegexLexerÚincludeÚbygroupsÚusingÚthisÚdefaultÚwords)
ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚLiteralÚ
WhitespaceÚFantomLexerc                    @   sê  e Zd ZdZdZdgZdgZdgZdZdZ	dd	„ Z
i d
dejfdejfdejfdejfg“ddefdefdejfdejfdejfdejfdedfdedfdejfdeejeejeeeƒfdeejeejeejƒfdefe
dƒeeedd �eƒfd!efe
d"ƒeeedd �eƒfg“dd#ej fd$ej fd%ej fd&ej!fd'ej!fded(fd)efg“dd#ej fd$ej fd%ej fd&ej!fd'ej!fded(fd)ej"fg“d*d+efg“d,d-efg“d.d/efg“d0d1efg“d2e#d3d4d4d5�efd6ej$j%fg“d7d8e&fg“dd9efe
d:ƒejfe'd(ƒg“d;e(d
ƒe(d*ƒe(d,ƒe(d.ƒe(d0ƒe(dƒe(d2ƒe(d7ƒd<ejd=fd>ej)d?fd@eee*ejƒdAfe
dBƒeeedd �e*ej+e*e&ƒfe
dCƒeej+e*e&ƒfe
dDƒee&eje*eƒdEfe
dFƒee&ejƒfdGeee*eje*eƒdHfe
dIƒeeedd �e*eje*eƒdHfe
dJƒeeedd �e*ej+e*eƒfe
dKƒeeedd �e*ej+e*ee*eedd �eƒfe
dLƒeeedd �e*ej+e*eƒfe
dMƒeeedd �e*ej+ƒfdNedEfdOedPfdQe*fd)e,fg“dEdRed(fe(d;ƒg“dHdRed(fe
dSƒeeedd �e*ej+e*eƒd(fe(d;ƒg“dPdTed(fe(d;ƒg“dAdQe*fdUefdVeejeejƒfdOed(fg“d=dWe*fdXeeejeƒfdYeeejeƒfdZed[fe'd(ƒg“dWe*fd\eej-e*ejƒd]fd^ejfe'd]ƒgdQe*fdOed_fe'd(ƒge(d
ƒe(dƒe(d7ƒdQe*fd`ee*ee*e&ƒfdTed(fdQe*fd)e,fgdaœ¥Z.dbS )cr   z!
    For Fantom source code.
    ÚFantomÚfanz*.fanzapplication/x-fantomzhttps://www.fantom.orgz1.5c                 C   s   t | ƒ tddddd�¡S )Nz	[\"\w\.]+z\n|;z[a-zA-Z_]\w*z#(?:\[|[a-zA-Z_]|\|)[:\w\[\]|\->?]*?)ÚpodÚeosÚidÚtype)r   Ú
substituteÚdict)Ústr© r   úS/var/www/html/CropPilot/venv/lib/python3.10/site-packages/pygments/lexers/fantom.pyÚs!   s   úÿzFantomLexer.sÚcommentsz(?s)/\*.*?\*/z//.*?$z\*\*.*?$z#.*$Úliteralsz \b-?[\d_]+(ns|ms|sec|min|hr|day)z(\b-?[\d_]*\.[\d_]+(ns|ms|sec|min|hr|day)z\b-?(\d+)?\.\d+(f|F|d|D)?z\b-?0x[0-9a-fA-F_]+z
\b-?[\d_]+z'\\.'|'[^\\]'|'\\u[0-9a-f]{4}'ú"Ú	insideStrú`Ú	insideUriz\b(true|false|null)\bz"(?:(\w+)(::))?(\w+)(<\|)(.*?)(\|>)z(?:(\w+)(::))?(\w+)?(#)(\w+)?z\[,\]z($type)(\[,\])ÚinType)Ústatez\[:\]z($type)(\[:\])z\\\\z\\"z\\`z\$\w+z	\$\{.*?\}z#popÚ.ÚprotectionKeywordsz'\b(public|protected|private|internal)\bÚtypeKeywordsz,\b(abstract|final|const|native|facet|enum)\bÚmethodKeywordsz8\b(abstract|native|once|override|static|virtual|final)\bÚfieldKeywordszB\b(abstract|const|final|native|override|static|virtual|readonly)\bÚotherKeywords)ÚtryÚcatchÚthrowÚfinallyÚforÚifÚelseÚwhileÚasÚisÚisnotÚswitchÚcaser   ÚcontinueÚbreakÚdoÚreturnÚgetÚsetz\b)ÚprefixÚsuffixz\b(it|this|super)\bÚ	operatorsz4\+\+|\-\-|\+|\-|\*|/|\|\||&&|<=>|<=|<|>=|>|=|!|\[|\]z[\[\]|\->:?]z$idÚrootzusing\br   z@\w+Úfacetz(class|mixin)(\s+)(\w+)Úinheritancez($type)([ \t]+)($id)(\s*)(:=)z($id)(\s*)(:=)z(\.|(?:\->))($id)(\s*)(\()ÚinsideParenz(\.|(?:\->))($id)z(new)(\s+)(make\w*)(\s*)(\()ÚinsideMethodDeclArgsz($type)([ \t]+)($id)(\s*)(\()z($type)(\s+)($id)(\s*)(,)z+($type)(\s+)($id)(\s*)(\->)(\s*)($type)(\|)z($type)(\s+)($id)(\s*)(\|)z($type)([ \t]+)($id)z\(z\{ÚinsideBracez\s+z\)z($type)(\s+)($id)(\s*)(\))z\}z:|,z(?:(\w+)(::))?(\w+)z[ \t]+z(\[)(\w+)(\])z(\")?([\w.]+)(\")?z::Ú
usingClassz(as)(\s+)(\w+)z#pop:2z[\w$]+ÚfacetFieldsz(\s*)(\w+)(\s*)(=))rK   rF   rL   N)/Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚaliasesÚ	filenamesÚ	mimetypesÚurlÚversion_addedr    r   Ú	MultilineÚSingleÚSpecialr   ÚFloatÚHexÚIntegerr   ÚCharr   r   ÚConstantr   r   Ú	NamespaceÚClassÚFunctionr   r   r   ÚEscapeÚInterpolÚBacktickr	   ÚBuiltinÚPseudor   r   r   Ú	Decoratorr   ÚVariabler
   ÚDeclarationÚtokensr   r   r   r   r      sî   ûÿÿÿÿÿÿÿìøùá(ùØ1ÿÏ4ÿÌ7ÿÿÉ;ÿÿÅ?ýü
úÁGÿ¹Jý¶P

ÿÿÿÿþ
ÿþÿüÿÿþÿÿÿÿÿ¹° þ �æ ÿþû �â %þ �Û )ÿû �× 0ÿÿù �Ð :ÿûýø �»N)rP   Ústringr   Úpygments.lexerr   r   r   r   r   r   r	   Úpygments.tokenr
   r   r   r   r   r   r   r   r   r   Ú__all__r   r   r   r   r   Ú<module>   s    
$0