File: //lib/python3/dist-packages/pygments/lexers/__pycache__/savi.cpython-311.pyc
�
�E�c% � �p � d Z ddlmZmZmZ ddlmZmZmZm Z m
Z
mZmZm
Z
mZmZ dgZ G d� de� � ZdS )z�
pygments.lexers.savi
~~~~~~~~~~~~~~~~~~~~
Lexer for Savi.
:copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�
RegexLexer�bygroups�include)
�
Whitespace�Keyword�Name�String�Number�Operator�Punctuation�Comment�Generic�Error� SaviLexerc � � e Zd ZdZdZdZdgZdgZg dej f�dej f�d e
ee� � f�d e
j d
f�de
j df�d
ej f�d e
eeej � � f�d e
eej � � df�dej f�def�dej f�dej f�dej f�d e
eeej � � f�d e
eej � � f�dedf�dedf�dedf�dedf�dedf�d e
eej � � df�d edf�d!ef�d"ef�d#ef�d$ef�d%ef�d&ef�d'ef�d(ef�d)ef�d*ej fd+edfd,edf ed� � gd-e
j d.fd/e
j fd0e
j fd1e
j fd2e
j fd3e
j dfd4e
j fd5efgd/e
j fd0e
j fd1e
j fd6e
j fde
j dfd7e
j fd5efgde
j df ed� � gd8�Z d9S ):r z4
For Savi source code.
.. versionadded: 2.10
�Saviz!https://github.com/savi-lang/savi�saviz*.saviz//.*?$z::.*?$z(\')(\w+)(?=[^\'])z\w?"�
string.double�'�string.charz(_?[A-Z]\w*)z(\.)(\s*)(_?[A-Z]\w*)z^([ \t]*)(:\w+)�declz((\w+|\+|\-|\*)\!)z\b\d([\d_]*(\.[\d_]+)?)\bz\b0x([0-9a-fA-F_]+)\bz\b0b([01_]+)\bz \w+(?=\()z(\.)(\s*)(\w+)z(@)(\w+)z\(�rootz\)z#popz\{z\}z\[z(\])(\!)z\]z[,;:\.@]z(\|\>)z(\&\&|\|\||\?\?|\&\?|\|\?|\.\?)z"(\<\=\>|\=\~|\=\=|\<\=|\>\=|\<|\>)z(\+|\-|\/|\*|\%)z(\=)z(\!|\<\<|\<|\&|\|)z\b\w+\bz[ \t\r]+\n*|\n+z\b[a-z_]\w*\b(?!\!)�:z\nz\\\(�string.interpolationz\\u[0-9a-fA-F]{4}z\\x[0-9a-fA-F]{2}z
\\[bfnrt\\\']z\\"�"z[^\\"]+�.z\\'z[^\\']+)r r r r r N)!�__name__�
__module__�__qualname__�__doc__�name�url�aliases� filenamesr
�Singler r r r �Double�Char�Classr r �Tagr �Deletedr
�Hex�Bin�Functionr �Declarationr �Interpol�Escaper �tokens� � �6/usr/lib/python3/dist-packages/pygments/lexers/savi.pyr r s� � � � � � �� �
�$�+�#�
�H�'��j�)�W
��'�.�!�W
�
�'�.�!�W
� �h�h�x��6�6�7�W
� ��
��/�W
� �V�[�-�(�W
�"