File: //lib/python3/dist-packages/pygments/lexers/__pycache__/jsonnet.cpython-311.pyc
�
�E�c � � � d Z ddlmZmZmZ ddlmZmZmZm Z m
Z
mZmZm
Z
mZ dgZdZedz Zd� Zd� Z G d � de� � Zd
S )z�
pygments.lexers.jsonnet
~~~~~~~~~~~~~~~~~~~~~~~
Lexer for Jsonnet data templating language.
:copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�include�
RegexLexer�words) �Comment�Keyword�Name�Number�Operator�Punctuation�String�Text�
Whitespace�JsonnetLexerz
[^\W\d]\w*z(?=\()c �h � d� | � � t fdt j f| t dfgS )Nz[^{}\\]z\\.�#pop)�formatr �Escape��
quote_marks �9/usr/lib/python3/dist-packages/pygments/lexers/jsonnet.py�string_rulesr s6 � � � � �:� &� &��/� ���� �V�V�$�� � c �J � d� | �� � t j dfgS )Nz([^{quote}\\]|\\.)*{quote})�quote�field_separator)r r �Variabler s r �quoted_field_namer s- � � &� -� -�J� -� ?� ?�
��)� +�� r c �R � e Zd ZdZdZdgZddgZdZi ddej fd e
j fd
efg�d ed� � de
fd
e
fde
dfde
dfde
fde
j fdefdedfdedfdedfdedf eg d�d�� � efd efd!ed"fd#ez ej d$feej d$feej fd%efg�d ed� � �d ed� � �dd&efd'ed(f ed� � g�deej d"feej fd efd)ed*fg�d+d,efd-ed(f ed� � g�dd.efd-ed(f ed� � g�d"eej fd/efd0ed(fd&efd efd,ed1fg�d$d/efd0ed(fd&efd ef ed� � g�dd efded2fded3fded4fd5e� d6�ed7fd8ed(fdej d9fdej d:f ed� � g �d7eej d;feej d<fg�d9 ed� � �d: ed� � �d4d'ed<f ed� � g�d1d=ed(f ed� � g�d<d efd>ed?f ed� � g�d&ed(fd8ed@f ed� � gd.efd&ed(f ed� � geej dAfd efgd,efd&ed(fd8ed@f ed� � gdB��ZdCS )Dr zLexer for Jsonnet source code.�Jsonnet�jsonnetz *.jsonnetz*.libsonnetzhttps://jsonnet.org� _commentsz
(//|#).*\nz/\*\*([^/]|/(?!\*))*\*/z/\*([^/]|/(?!\*))*\*/�rootz@'.*'z@".*"�'�singlestring�"�doublestringz\|\|\|(.|\n)*\|\|\|z[+-]?[0-9]+(.[0-9])?z[!$~+\-&|^=<>*/%]z\{�objectz\[�arrayzlocal\b�
local_namezassert\b�assert)r* �else�error�false�for�if�import� importstr�in�null�
tailstrict�then�self�super�truez\b)�suffixz\s+zfunction(?=\()�function_paramszstd\.�
function_argsz[\.()]�,z\]r z(?==))r �local_valuer= �=�;�:z\(z\)�function_param_default�object_local_name�
object_assert�field_name_exprz(?=�)�
field_namez\}�double_field_name�single_field_name)r r: r z (?=[,\)])z\+?::?:?)r r �field_valuez#pop:2)r �object_local_value)rI rC rB rJ N)�__name__�
__module__�__qualname__�__doc__�name�aliases� filenames�urlr �Singler �Docr r �Floatr
r r r r �jsonnet_function_tokenr �Builtin�Function�
jsonnet_tokenr r r
r �tokens� r r r r $ s� � � � � � �(�(��D��k�G��m�,�I�
�C�}��
�G�N�+�
'���4�
%�w�/�
�}� ��G�K� � �
�v��
�v��
�6�>�*�
�6�>�*�
#�V�,�
$�f�l�3� "�8�,�
�K��*�
�K��)�
��<�1�
�'�8�,�
�U� � � � � � � � '�
(�
�Z� �
��):�;�
�.�
.���o�N�
#�T�]�O�D�
�D�M�*�
��$�5
�}�F ���S�)�)�G}�H ���S�)�)�I}�J �
�;��
�K��(��G�F�O�O�
�K}�T �
#�T�]�4E�F�
�D�M�*�
�Z� �
�j�"9�:�
�U}�` �
�8��
�;��'��G�F�O�O�
�a}�j �
�;��
�;��'��G�F�O�O�
�k}�t �
�D�M�*�
�K� �
�K��(�
�;��
�Z� �
�8�5�6�
�u}�D �
�K� �
�K��(�
�;��
�Z� ��G�F�O�O�
�E}�R �
�Z� �
��"5�6�
�'�?�3�
�H�/�0�
$�M�
$�
$�
$�d�L�9�
�K��(�
�4�=�"5�6�
�4�=�"5�6��G�K� � �
�S}�h �
#�T�]�6�
� �D�M�+<�=�
�i}�t �.�.�s�3�3�u}�v �.�.�s�3�3�w}�x �
�H�/�0��G�F�O�O�
�y}�@ !�
�:�v�.��G�F�O�O�#
�A}�H �
�Z� �
�+�'F�G��G�K� � �
�I}�T �;��'�
�K��*��G�F�O�O�
� �;��
�;��'��G�F�O�O�
� �D�M�+I�J�
�Z� �
�
�8��
�;��'�
�K��*��G�F�O�O�
�o}� }� }�F�F�Fr N)rN �pygments.lexerr r r �pygments.tokenr r r r r
r r r
r �__all__rY rV r r r r[ r r �<module>r_ s ��� � 6� 5� 5� 5� 5� 5� 5� 5� 5� 5�*� *� *� *� *� *� *� *� *� *� *� *� *� *� *� *� *� *� *� *� *� *� �
���
�&��2� �� � �� � �D� D� D� D� D�:� D� D� D� D� Dr