a
    T_$                     @   sb   d Z ddlZddl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.sas
    ~~~~~~~~~~~~~~~~~~~

    Lexer for SAS.

    :copyright: Copyright 2006-2020 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    N)
RegexLexerincludewords)CommentKeywordNameNumberStringTextOtherGenericSASLexerc                   @   s  e Zd ZdZdZdgZddgZg dZej	ej
B ZdZdZd	Zd
ZdZedededededdefgdefdefdejfdejfgdejfgdedfgdedfgdedfgdedfdejdfdejdfedged ed!ed"ed#geed$d$d%efeed$d$d%efeed$d$d%efeed&d$d%ejfeed$d'd%ejfgd(ejfd)ejfd*e d+fd,e d-fgd.e dfd/e j!fd0e fd1e fgd,e dfd/e j!fd2ejd3fd4e fd5e fgd6ejdfgd7e"fgd8ej#fgd9Z$d:S );r   zL
    For `SAS <http://www.sas.com/>`_ files.

    .. versionadded:: 2.2
    ZSASZsasz*.SASz*.sas)z
text/x-sasztext/saszapplication/x-sas):ZbquoteZnrbquoteZcmpresZqcmpresZcompstorZdatatypdisplaydoelseendevalglobalgotoifindexinputZkeydeflabelleftlengthZletZlocallowcaseZmacroZmendZnrquoteZnrstrputZqleftZqlowcaseZqscanZqsubstrZqsysfuncZqtrimquoteZqupcasescanstrsubstrZsuperqZsyscallZsysevalfZsysexecZsysfuncsysgetZsyslputsysprodsysrcZsysrputthentotrimZunquoteuntilupcaseverifywhilewindow)r   r   r$   r   r   r'   r*   )>abortZarrayZattribZbyZcallZcardsZcards4ZcatnamecontinueZ	datalinesZ
datalines4deleteZdelimZ	delimiterr   ZdmdropZendsaserrorfilefilenameZfootnoteformatr   inZinfileZinformatr   Zkeepr   Zleaver   libnamelinklistZlostcardmergeZmissingmodifyZoptionsoutputoutZpager   ZredirectremoverenamereplaceZretainreturnselectsetskipZstartsasstoptitleupdateZwaitsaswherer+   xZsystask))addandZalterasZcascadeZcheckZcreater.   ZdescribeZdistinctr/   ZforeignfromgroupZhavingr   insertZintor4   keyZlikemessager9   ZmsgtypenotZnullZonororderZprimaryZ
referencesresetZrestrictr@   rA   tableuniquerE   ZvalidateZviewrF   (  absZaddrZairyZarcosZarsinZatanZattrcZattrnZbandZbetainvZblshiftZbnotZborZbrshiftZbxorZbyteZcdfZceilZcexistZcinvcloseZcnonctZcollateZcompblZcompoundcompressZcosZcoshZcssZcurobsZcvZdaccdbZdaccdbslZdaccslZdaccsydZdacctabZdairydateZdatejulZdatepartZdatetimeZdayZdcloseZdepdbZdepdbslZdepslZdepsydZdeptabZdequoteZdhmsZdifZdigammaZdimZdinfoZdnumZdopenZdoptnameZdoptnumZdreadZdropnoteZdsnameZerfZerfcZexistZexpZfappendZfcloseZfcolZfdeleteZfetchZfetchobsZfexistfgetZ	fileexistr2   ZfilerefZfinfoZfinvZfipnameZfipnamelZfipstateZfloorZfnonctZfnoteZfopenZfoptnameZfoptnumZfpointZfposZfputZfreadZfrewindZfrlenZfsepZfuzzZfwriteZgaminvZgammaZ	getoptionZgetvarcZgetvarnZhboundZhmsZhosthelpZhourZibesselr   ZindexcZindexwr   ZinputcZinputnintZintckZintnxZintrrZirrZjbesselZjuldateZkurtosisZlagZlboundr   r   Zlgammar5   ZlibreflogZlog10Zlog2ZlogpdfZlogpmfZlogsdfr   maxZmdyZmeanminZminutemodZmonthZmopenZmortnZnetpvZnmissZnormalZnoteZnpvopenZordinalpathnameZpdfpeekZpeekcZpmfZpointZpoissonZpokeZprobbetaZprobbnmlZprobchiZprobfZprobgamZprobhyprZprobitZprobnegbZprobnormZprobtr   ZputcZputnZqtrr   ZranbinZrancauZranexpZrangamrangeZrankZrannorZranpoiZrantblZrantriZranunirepeatZresolvereverseZrewindrightroundZsavingr   ZsdfsecondZsignZsinZsinhZskewnessZsoundexZspedisZsqrtZstdstderrZstfipsZstnameZstnamelr    sumZsymgetr!   Zsysmsgr"   r#   systemZtanZtanhtimeZtimepartZtinvZtnonctZtoday	translateZtranwrdZtrigammar&   ZtrimnZtruncZuniformr(   ZussvarZvarfmtZvarinfmtZvarlabelZvarlenZvarnameZvarnumZvarrayZvarrayxZvartyper)   ZvformatZvformatdZ	vformatdxZvformatnZ	vformatnxZvformatwZ	vformatwxZvformatxZvinarrayZ	vinarrayxZ	vinformatZ
vinformatdZvinformatdxZ
vinformatnZvinformatnxZ
vinformatwZvinformatwxZ
vinformatxZvlabelZvlabelxZvlengthZvlengthxZvnameZvnamexZvtypeZvtypexZweekdayZyearZyyqZzipfipsZzipnameZzipnamelZzipstatecomments	proc-datacards-datalineslogsgeneral.z
^\s*\*.*?;z	/\*.*?\*/z^\s*\*(.|\n)*?;z/[*](.|\n)*?[*]/z%(^|;)\s*(proc \w+|data|run|quit)[\s;]z^\s*(datalines|cards)\s*;\s*$dataz(.|\n)*^\s*;\s*$z#popz\n?^\s*%?put log-messageszNOTE(:|-).*zWARNING(:|-).*zERROR(:|-).*keywordsvars-stringsspecialnumbersz\b)prefixsuffix%z\(z&[a-z_]\w{0,31}\.?z%[a-z_]\w{0,31}z\'string_squote"string_dquote'z\\\\|\\"|\\\nz	[^$\'\\]+z[$\'\\]&validvarz	[^$&"\\]+z[$"\\]z[a-z_]\w{0,31}\.?z9\b[+-]?([0-9]+(\.[0-9]+)?|\.[0-9]+|\.)(E[+-]?[0-9]+)?i?\bza(null|missing|_all_|_automatic_|_character_|_n_|_infile_|_name_|_null_|_numeric_|_user_|_webout_))rootrp   rq   rr   rv   rs   rw   rt   rx   ry   r   r   r   r{   rz   N)%__name__
__module____qualname____doc__namealiases	filenamesZ	mimetypesre
IGNORECASE	MULTILINEflagsZbuiltins_macrosZbuiltins_conditionalsZbuiltins_statementsZbuiltins_sqlZbuiltins_functionsr   r
   r   Z	Multiliner   ZReservedr   r   ZEmphErrorr   r   ZBuiltinZVariableZFunctionr	   ZEscaper   ZConstanttokens r   r   5/usr/lib/python3/dist-packages/pygments/lexers/sas.pyr      s   	4


	

)r   r   Zpygments.lexerr   r   r   Zpygments.tokenr   r   r   r   r	   r
   r   r   __all__r   r   r   r   r   <module>   s
   
(