o
    Ñ­jæ  ã                   @   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.ecl
    ~~~~~~~~~~~~~~~~~~~

    Lexers for the ECL language.

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Ú
RegexLexerÚincludeÚbygroupsÚwords)ÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚ
WhitespaceÚECLLexerc                   @   s@  e Zd ZdZdZdZdgZdgZdgZdZ	e
je
jB Zedƒed	ƒgd
efdejfdejfgedƒedƒedƒedƒdedfdedfdejfdejfdejfdejfdejfdefdefdefgdejfgdejfdeej eƒfge!dd d!�ej"fe!d"d d!�ej"fge!d#d d!�ej#fgded$fded$fd%efgd&œZ$d'd(„ Z%d)S )*r   z:
    Lexer for the declarative big-data ECL language.
    ÚECLzJhttps://hpccsystems.com/training/documentation/ecl-language-reference/htmlÚeclz*.eclzapplication/x-eclz1.5Ú
whitespaceÚ
statementsz\s+z\/\/.*z/(\\\n)?\*(.|\n)*?\*(\\\n)?/ÚtypesÚkeywordsÚ	functionsÚhashú"Ústringz\'z"(\d+\.\d*|\.\d+|\d+)e[+-]?\d+[lu]*z(\d+\.\d*|\.\d+|\d+f)f?z0x[0-9a-f]+[lu]*z0[0-7]+[lu]*z\d+[lu]*z[~!%^&*+=|?:<>/-]+z[{}()\[\],.;]z	[a-z_]\w*z^#.*$z(RECORD|END)\Dz¦((?:ASCII|BIG_ENDIAN|BOOLEAN|DATA|DECIMAL|EBCDIC|INTEGER|PATTERN|QSTRING|REAL|RECORD|RULE|SET OF|STRING|TOKEN|UDECIMAL|UNICODE|UNSIGNED|VARSTRING|VARUNICODE)\d*)(\s+))ÚAPPLYÚASSERTÚBUILDÚ
BUILDINDEXÚEVALUATEÚFAILÚKEYDIFFÚKEYPATCHÚLOADXMLÚNOTHORÚNOTIFYÚOUTPUTÚPARALLELÚ
SEQUENTIALÚSOAPCALLÚ
CHECKPOINTÚ
DEPRECATEDÚFAILCODEÚFAILMESSAGEÚFAILUREÚGLOBALÚINDEPENDENTÚ	ONWARNINGÚPERSISTÚPRIORITYÚRECOVERYÚSTOREDÚSUCCESSÚWAITÚWHENz\b)Úsuffix)eÚALLÚANDÚANYÚASÚATMOSTÚBEFOREzBEGINC++ÚBESTÚBETWEENÚCASEÚCONSTÚCOUNTERÚCSVÚDESCENDÚENCRYPTzENDC++ÚENDMACROÚEXCEPTÚ	EXCLUSIVEÚEXPIREÚEXPORTÚEXTENDÚFALSEÚFEWÚFIRSTÚFLATÚFULLÚFUNCTIONÚGROUPÚHEADERÚHEADINGÚHOLEÚIFBLOCKÚIMPORTÚINÚJOINEDÚKEEPÚKEYEDÚLASTÚLEFTÚLIMITÚLOADÚLOCALÚLOCALEÚLOOKUPÚMACROÚMANYÚMAXCOUNTÚ	MAXLENGTHzMIN SKEWÚMODULEÚ	INTERFACEÚNAMEDÚNOCASEÚNOROOTÚNOSCANÚNOSORTÚNOTÚOFÚONLYÚOPTÚORÚOUTERÚ	OVERWRITEÚPACKEDÚ	PARTITIONÚPENALTYÚPHYSICALLENGTHÚPIPEÚQUOTEÚRELATIONSHIPÚREPEATÚRETURNÚRIGHTÚSCANÚSELFÚ	SEPARATORÚSERVICEÚSHAREDÚSKEWÚSKIPÚSQLÚSTOREÚ
TERMINATORÚTHORÚ	THRESHOLDÚTOKENÚ	TRANSFORMÚTRIMÚTRUEÚTYPEÚUNICODEORDERÚUNSORTEDÚVALIDATEÚVIRTUALÚWHOLEÚWILDÚWITHINÚXMLÚXPATHÚ__COMPRESSED__)ƒÚABSÚACOSÚALLNODESÚASCIIÚASINÚASSTRINGÚATANÚATAN2ÚAVEr@   ÚCHOOSEÚCHOOSENÚ
CHOOSESETSÚCLUSTERSIZEÚCOMBINEÚCORRELATIONÚCOSÚCOSHÚCOUNTÚ
COVARIANCEÚCRONÚDATASETÚDEDUPÚDEFINEÚDENORMALIZEÚ
DISTRIBUTEÚDISTRIBUTEDÚDISTRIBUTIONÚEBCDICÚENTHÚERRORr   ÚEVENTÚ
EVENTEXTRAÚ	EVENTNAMEÚEXISTSÚEXPr*   r+   ÚFETCHÚFROMUNICODEÚ
GETISVALIDr-   ÚGRAPHrR   ÚHASHÚHASH32ÚHASH64ÚHASHCRCÚHASHMD5ÚHAVINGÚIFÚINDEXÚ	INTFORMATÚISVALIDÚITERATEÚJOINÚ
KEYUNICODEÚLENGTHÚLIBRARYr^   ÚLNr`   ÚLOGÚLOOPÚMAPÚMATCHEDÚMATCHLENGTHÚMATCHPOSITIONÚ	MATCHTEXTÚMATCHUNICODEÚMAXÚMERGEÚ	MERGEJOINÚMINÚNOLOCALÚNONEMPTYÚ	NORMALIZEÚPARSEry   ÚPOWERÚPRELOADÚPROCESSÚPROJECTÚPULLÚRANDOMÚRANGEÚRANKÚRANKEDÚ
REALFORMATÚRECORDOFÚ	REGEXFINDÚREGEXREPLACEÚREGROUPÚREJECTEDÚROLLUPÚROUNDÚROUNDUPÚROWÚROWDIFFÚSAMPLEÚSETÚSINÚSINHÚSIZEOFr'   ÚSORTÚSORTEDÚSQRTÚSTEPPEDr3   ÚSUMÚTABLEÚTANÚTANHÚTHISNODEÚTOPNÚ	TOUNICODEÚTRANSFERr�   ÚTRUNCATEÚTYPEOFÚUNGROUPr�   ÚVARIANCEÚWHICHÚWORKUNITÚ	XMLDECODEÚ	XMLENCODEÚXMLTEXTÚ
XMLUNICODEz#popz[^"\']+)Úrootr   r   r   r   r   r   r   c                 C   s8   d}d| v r
|d7 }d| v r|d7 }d| v r|d7 }|S )zŒThis is very difficult to guess relative to other business languages.
        -> in conjunction with BEGIN/END seems relatively rare though.r   z->g{®Gáz„?ÚBEGINÚEND© )ÚtextÚresultr  r  úP/var/www/html/CropPilot/venv/lib/python3.10/site-packages/pygments/lexers/ecl.pyÚanalyse_text„   s   zECLLexer.analyse_textN)&Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesÚversion_addedÚreÚ
IGNORECASEÚ	MULTILINEÚflagsr   r   r   ÚSingleÚ	Multiliner
   r   ÚFloatÚHexÚOctÚIntegerr   r   r	   ÚPreprocr   ÚDeclarationr   ÚTyper   ÚReservedÚFunctionÚtokensr  r  r  r  r  r      sz    þýòÿ
ýþúù	ðïöêéÿý¥b)r  r"  Úpygments.lexerr   r   r   r   Úpygments.tokenr   r   r   r	   r
   r   r   r   Ú__all__r   r  r  r  r  Ú<module>   s    
(