�
|�e
� �t � d Z ddlZddlmZmZmZmZmZmZ ddl m
Z
mZmZm
Z
mZmZmZmZ dgZ G d� de� Zy)z�
pygments.lexers.graph
~~~~~~~~~~~~~~~~~~~~~
Lexers for graph query languages.
:copyright: Copyright 2006-2023 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�CypherLexerc � � e Zd ZdZdZdZdgZddgZej ej z Z ed� ed� ed � ed
� ed� ed� ed
� gde
fgd ee
ee
� fd ee
ee
ee
� fd ee
ee
� fd ee
ee
ee
� fd ee
ee
� fd ee
ee
ee
� fd ee
ee
� fd ee
ee
� fd ee
ee
� fd ee
ee
� fd ee
ee
� fd ee
ee
ee
� fd ee
ee
� fd ee
eeee
� f edd�� e
fgd ee ee� e� fd! ee ee� e� fd" ee ee� e� fd#efd$efd%efgd&efd'ej. fgd(efgd)efd*efgd+ej4 fgd,�Zy-).r zg
For Cypher Query Language
For the Cypher version in Neo4j 3.3
.. versionadded:: 2.0
�Cypherz3https://neo4j.com/docs/developer-manual/3.3/cypher/�cypherz*.cypz*.cypher�clauses�keywords� relations�strings�
whitespace� barewords�commentz^(create|order|match|limit|set|skip|start|return|with|where|delete|foreach|not|by|true|false)\bz(create)(\s+)(index|unique)\bz'(drop)(\s+)(contraint|index)(\s+)(on)\bz(ends)(\s+)(with)\bz(is)(\s+)(node)(\s+)(key)\bz(is)(\s+)(null|unique)\bz(load)(\s+)(csv)(\s+)(from)\bz(on)(\s+)(match|create)\bz(optional)(\s+)(match)\bz(order)(\s+)(by)\bz(starts)(\s+)(with)\bz(union)(\s+)(all)\bz%(using)(\s+)(periodic)(\s+)(commit)\bz(using)(\s+)(index)\bz,(using)(\s+)(range|text|point)(\s+)(index)\b)%�all�any�as�asc� ascending�assert�call�case�create�delete�desc�
descending�distinct�end�fieldterminator�foreach�in�limit�match�merge�none�not�null�remove�return�set�skip�single�start�then�union�unwind�yield�where�when�with�collectz\b)�suffixz(-\[)(.*?)(\]->)z(<-\[)(.*?)(\]-)z(-\[)(.*?)(\]-)z
-->|<--|\[|\]z<|>|<>|=|<=|=>|\(|\)|\||:|,|;z[.*{}]z#([\'"])(?:\\[tbnrf\'"\\]|[^\\])*?\1z`(?:``|[^`])+`z\s+z[a-z]\w*z\d+z//.*$)�rootr r r r r r r N)�__name__�
__module__�__qualname__�__doc__�name�url�aliases� filenames�re� MULTILINE�
IGNORECASE�flagsr r r r r
r r r r r
r �Variabler r �Single�tokens� � �7/usr/lib/python3/dist-packages/pygments/lexers/graph.pyr r s� � �� �D�
?�C��j�G��*�%�I��L�L�2�=�=�(�E�
�I���J���K� ��I���L�!��K� ��I��
�4�5<�
>�
� .���*�g�6�
8�
7���*�g�z�7�K�
M�
#���*�g�6�
8�
+���*�g�z�7�K�
M�
(���*�g�6�
8�
-���*�g�z�7�K�
M�
)���*�g�6�
8�
(���*�g�6�
8�
"���*�g�6�
8�
%���*�g�6�
8�
#���*�g�6�
8�
5���*�g�z�7�K�
M�
%���*�g�6�
8�
<���*�d�J��H�
J�
� G�
PU�V�
X_�
`�=$
�L !�(�8�U�4�[�(�"K�L�
�(�8�U�4�[�(�"K�L�
��(�E�$�K��!J�K�
�x�(�
-�{�;�
��$�
� 4�V�<�
��
�
�.�
�
�Z� �
� �$��
�V��
�
�w�~�~�&�
�MI�FrS )rF rK �pygments.lexerr r r r r r �pygments.tokenr r
r r r
r r r �__all__r rR rS rT �<module>rX s; ���
� L� L�� � � �/��X�*� XrS |