U
    luf                     @   sx   d Z ddl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 ddgZG dd deZG dd deZdS )	z
    pygments.lexers.q
    ~~~~~~~~~~~~~~~~~

    Lexer for the Q programming language.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerwordsincludebygroupsinherit)	CommentNameNumberOperatorPunctuationString
WhitespaceLiteralGenericKLexerQLexerc                   @   s  e Zd ZdZdZdgZdgZdejfdej	dfdej
fd	efd
ejdfgedededgedddejfgdejfdeejej
fdejfdejfdeejeeeedfdeejeefdedfdedfdedfdejfdejfd ejfed!d"efd#efd$efged%d&ed'fged%d(ed'fged%d)ed'fgd*ejfd+efd,ejfd-ejfd.ejfd/ej fd0ej fd1ej!fd2ej!fd3ej!fd4efd5ej"fd6ej"j#fgd7ej	fd8ej	d'fd9ej	fgd:ejfd;ej$fd<ejd'fgd=
Z%d>S )?r   zR
    For `K <https://code.kx.com/>`_ source code.

    .. versionadded:: 2.12
    Kkz*.kz^#!.*z^/\s*\ncommentsz
(?<!\S)/.*z\s+z\"strings
whitespacekeywordsdeclarations)-absacosasinatanavgbinZbinrZbyZcorcosZcovdevdeletedivZdoZenlistexecexitexpfromgetenvZhopenifininsertlastlikelogmaxminZprdselectZsetenvsinsqrtsssumtanupdatevarZwavgwhileZwithinZwsumZxexp\bsuffixz^\\ts?z^(\\\w\s+[^/\n]*?)(/.*)z^\\\w.*z^[a-zA-Z]\)z@([.]?[a-zA-Z][\w.]*)(\s*)([-.~=!@#$%^&*_+|,<>?/\\:']?:)(\s*)(\{)	functionsz7([.]?[a-zA-Z][\w.]*)(\s*)([-.~=!@#$%^&*_+|,<>?/\\:']?:)z\{z\(parenthesesz\[bracketsz'`([a-zA-Z][\w.]*)?z`:([a-zA-Z/][\w./]*)?z`([a-zA-Z][\w.]*)?numbersz[a-zA-Z][\w.]*z[-=+*#$%@!~^&:.,<>'\\|/?_];rootz\}z#popz\)z\]z[01]+bz0[nNwW][cefghijmndzuvtp]?zh(?:[0-9]{4}[.][0-9]{2}[.][0-9]{2}|[0-9]+)D(?:[0-9](?:[0-9](?::[0-9]{2}(?::[0-9]{2}(?:[.][0-9]*)?)?)?)?)?z\[0-9]{4}[.][0-9]{2}(?:m|[.][0-9]{2}(?:T(?:[0-9]{2}:[0-9]{2}(?::[0-9]{2}(?:[.][0-9]*)?)?)?)?)z1[0-9]{2}:[0-9]{2}(?::[0-9]{2}(?:[.][0-9]{1,3})?)?z<[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}z0x[0-9a-fA-F]+z7([0-9]*[.]?[0-9]+|[0-9]+[.]?[0-9]*)[eE][+-]?[0-9]+[ef]?z&([0-9]*[.][0-9]+|[0-9]+[.][0-9]*)[ef]?z
[0-9]+[ef]z[0-9]+cz[0-9]+[ihtuv]z[0-9]+[jnp]?z[^\\]+z^\\z\\z[^"\\]+z\\.")
r   rA   r   r   r<   r=   r>   r?   r   r   N)&__name__
__module____qualname____doc__namealiases	filenamesr   ZHashbangZ	MultilineSingler   r   Doubler   r   r
   WordZPreprocr   r   ZPromptr   ZFunctionr   Variable	ExceptionZSymbolr	   ZBinr   DateZHexZFloatZIntegerZLongZEscapetokens rQ   rQ   5/tmp/pip-unpacked-wheel-7eq1ciah/pygments/lexers/q.pyr      s   

&
"

c                   @   s:   e Zd ZdZdZdgZdgZdedddej	fe
giZd	S )
r   zR
    For `Q <https://code.kx.com/>`_ source code.

    .. versionadded:: 2.12
    Qqz*.qrA   )ZajZaj0ZajfZajf0allandanyZascZasofattrZavgsZceilingcolscountZcrosscsvZcutZdeltasdescZdifferZdistinctZdsaveZeachZejZemaevalexceptZfbyZfillsfirstZfkeysZflipfloorgetgroupZgtimeZhcloseZhcountZhdelZhsymZiascZidescZijZijfZinterinvkeykeysZljZljfloadlowerZlsqZltimeZltrimZmavgZmaxsZmcountmd5ZmdevZmedmetaZminsZmmaxZmminZmmumodZmsumnegnextnotnullorZoverparseZpeachZpjZprdsZpriorprevZrandZrankZratiosZrazeZread0read1Z
reciprocalZrevalreverseZrloadrotateZrsaveZrtrimsavescanZscovZsdevsetshowsignumZssrstringZsublistZsumssvZsvarsystemZtablesZtilZtrimZtxftypeZujZujfungroupunionupperZupsertvalueviewZviewsvswhereZwjZwj1ZwwZxascZxbarZxcolZxcolsZxdescZxgroupZxkeyZxlogZxprevZxrankr9   r:   N)rC   rD   rE   rF   rG   rH   rI   r   r   ZBuiltinr   rP   rQ   rQ   rQ   rR   r      s   N)rF   Zpygments.lexerr   r   r   r   r   Zpygments.tokenr   r   r	   r
   r   r   r   r   r   __all__r   r   rQ   rQ   rQ   rR   <module>   s   
, 