File: //opt/alt/python311/lib/python3.11/site-packages/pygments/lexers/__pycache__/gsql.cpython-311.pyc
�
�;f� � �| � d Z ddlZddlmZmZmZmZmZmZ ddl m
Z
mZmZm
Z
mZmZmZmZ dgZ G d� de� � ZdS )z�
pygments.lexers.gsql
~~~~~~~~~~~~~~~~~~~~
Lexers for TigerGraph GSQL graph query language
:copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� N)�
RegexLexer�include�bygroups�using�this�words)�Keyword�Punctuation�Comment�Operator�Name�String�Number�
Whitespace� GSQLLexerc � � e Zd ZdZdZdZdgZdgZdZe j
e j z Z e
d� � e
d� � e
d � � e
d
� � e
d� � e
d� � e
d
� � e
d� � e
d� � g dej fdej fg eddd�� � efg ed� � ej fg ed� � ej fgd ee ee� � e� � fdefdefgdefdej fgdefgdefdefgd efd!efgd"�
Zd#S )$r z)
For GSQL queries (version 3.x).
�GSQLz(https://docs.tigergraph.com/dev/gsql-ref�gsqlz*.gsqlz2.10�comment�keywords�clauses�accums� relations�strings�
whitespace� barewords� operatorsz\#.*z/\*(.|\n)*?\*/)z�ACCUM�AND�ANY�API�AS�ASC�AVG�BAG�BATCH�BETWEEN�BOOL�BOTH�BREAK�BY�CASE�CATCH�COALESCE�COMPRESS�CONTINUE�COUNT�CREATE�DATETIME�DATETIME_ADD�DATETIME_SUB�DELETE�DESC�DISTRIBUTED�DO�DOUBLE�EDGE�ELSE�END�ESCAPE� EXCEPTION�FALSE�FILE�FILTER�FLOAT�FOREACH�FOR�FROM�GRAPH�GROUP�GSQL_INT_MAX�GSQL_INT_MIN�
GSQL_UINT_MAX�HAVING�IF�IN�INSERT�INT� INTERPRET� INTERSECT�INTERVAL�INTO�IS�ISEMPTY� JSONARRAY�
JSONOBJECT�LASTHOP�LEADING�LIKE�LIMIT�LIST�
LOAD_ACCUM�LOG�MAP�MATCH�MAX�MIN�MINUS�NOT�NOW�NULL�OFFSET�OR�ORDER�PATH�PER�PINNED�
POST_ACCUMz
POST-ACCUM�
PRIMARY_ID�PRINT�QUERY�RAISE�RANGE�REPLACE�RESET_COLLECTION_ACCUM�RETURN�RETURNS�RUN�SAMPLE�SELECT�
SELECT_VERTEX�SET�SRC�STATIC�STRING�SUM�SYNTAX�TARGET�TAGSTGT�THEN�TO�TO_CSV�TO_DATETIME�TRAILING�TRIM�TRUE�TRY�TUPLE�TYPEDEF�UINT�UNION�UPDATE�VALUES�VERTEX�WHEN�WHERE�WHILE�WITHz(?<!\.)z\b)�prefix�suffix)�accum�having�limit�order� postAccum�sample�where)�andaccum�
arrayaccum�avgaccum�bagaccum�bitwiseandaccum�bitwiseoraccum�groupbyaccum� heapaccum� listaccum�MapAccum�maxaccum�minaccum�oraccum�setaccum�sumaccumz(-\s?)(\(.*\:\w?\))(\s?-)z->|<-z[.*{}\[\]\<\>\_]z"([^"\\]|\\.)*"z @{1,2}\w+z\s+z[a-z]\w*z(\d+\.\d+|\d+)zR\$|[^0-9|\/|\-](\-\=|\+\=|\*\=|\\\=|\=|\=\=|\=\=\=|\+|\-|\*|\\|\+\=|\>|\<)[^\>|\/]z((\||\(|\)|\,|\;|\=|\-|\+|\*|\/|\>|\<|\:))
�rootr r r r r r r r r N)�__name__�
__module__�__qualname__�__doc__�name�url�aliases� filenames�
version_added�re� MULTILINE�
IGNORECASE�flagsr r �Single� Multiliner r r
�Builtinr r r r r
r �Variabler r �tokens� � �G/opt/alt/python311/lib/python3.11/site-packages/pygments/lexers/gsql.pyr r s� � � � � � �� � �D�
4�C��h�G��
�I��M��L�2�=�(�E�
�G�I����G�J����G�I����G�H����G�K� � ��G�I����G�L�!�!��G�K� � ��G�K� � �
� �g�n�%�
�� 1�2�
�
�U� F�&