HEX
Server: LiteSpeed
System: Linux us-phx-web1284.main-hosting.eu 4.18.0-553.109.1.lve.el8.x86_64 #1 SMP Thu Mar 5 20:23:46 UTC 2026 x86_64
User: u300739242 (300739242)
PHP: 8.2.30
Disabled: system, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
Upload Files
File: //opt/alt/python311/lib/python3.11/site-packages/pygments/lexers/__pycache__/tnt.cpython-311.pyc
�

�;f�(��h�dZddlZddlmZddlmZmZmZmZm	Z	m
Z
mZmZdgZ
Gd�de��ZdS)z�
    pygments.lexers.tnt
    ~~~~~~~~~~~~~~~~~~~

    Lexer for Typographic Number Theory.

    :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�N)�Lexer)�Text�Comment�Operator�Keyword�Name�Number�Punctuation�Error�TNTLexerc�v�eZdZdZdZdZdgZdgZdZgZ	e
d��Ze
d��Ze
d	��Z
e
d
��Ze
d��Ze
d��Ze
d
��Ze
d��Zejd��Zejd��Zejd��Zd�Zdd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z dS)ruz
    Lexer for Typographic Number Theory, as described in the book
    Gödel, Escher, Bach, by Douglas R. Hofstadter
    zTypographic Number Theoryz,https://github.com/Kenny2github/language-tnt�tntz*.tntz2.7u⊃→]&∧^|∨Vvu+.⋅*�abcdeu'′z~!uAE∀∃�
0123456789z	 
ax(?xi)
        joining | separation | double-tilde | fantasy\ rule
        | carry[- ]over(?:\ of)?(?:\ line)?\ ([0-9]+) | detachment
        | contrapositive | De\ Morgan | switcheroo
        | specification | generalization | interchange
        | existence | symmetry | transitivity
        | add\ S | drop\ S | induction
        | axiom\ ([1-5]) | premise | push | pop
    z((?:[0-9]+)(?:(?:, ?|,? and )(?:[0-9]+))*z\[[^\n\]]+\]c�>�tj|g|�Ri|��g|_dS)N)r�__init__�cur)�self�args�kwargss   �F/opt/alt/python311/lib/python3.11/site-packages/pygments/lexers/tnt.pyrzTNTLexer.__init__7s-��
��t�-�d�-�-�-�f�-�-�-������Fc��|}	|||jvr|dz
}|||jv�n#t$rt|��}YnwxYw|r
||krt�||kr*|j�|t|||�f��|S)zTokenize whitespace.�)�
WHITESPACE�
IndexError�len�AssertionErrorr�appendr)r�start�text�required�ends     r�
whitespacezTNTLexer.whitespace;s�����	��s�)�t��.�.��q����s�)�t��.�.����	�	�	��d�)�)�C�C�C�	�����	!��u��� � ��%�<�<��H�O�O�U�D�$�u�S�y�/�:�;�;�;��
s�#(�A�Ac���|||jvrt�|dz}|||jvr|dz
}|||jv�|j�|t
j|||�f��|S)zTokenize a variable.r)�	VARIABLESr�PRIMESrrr�Variable�rr r!r#s    r�variablezTNTLexer.variableIsy����;�d�n�,�,� � ��A�g���3�i�4�;�&�&��1�H�C��3�i�4�;�&�&�������
�t�E�#�I��?�@�@�@��
rc��||dkrg|dz}||dkr|dz
}||dk�|j�|tj|||�f��|�||��S||dkr2|j�|tj||f��|dzS|||jvr|�||��S||dkr�|j�|t||f��|�|dz|��}|||jvrt�|j�|t||f��|�|dz|��}||dkrt�|j�|t||f��|dzSt�)zTokenize a term.�Sr�0�(�))rrr	�Integer�termr&r*r
�	OPERATORSrrr)s    rr1z
TNTLexer.termSs�����;�#�����'�C��s�)�s�"�"��q����s�)�s�"�"��H�O�O�U�F�N�D��s��O�D�E�E�E��9�9�S�$�'�'�'���;�#����H�O�O�U�F�N�D��K�@�A�A�A���7�N���;�$�.�(�(��=�=���-�-�-���;�#����H�O�O�U�K��e��=�>�>�>��I�I�e�A�g�t�,�,�E��E�{�$�.�0�0�$�$��H�O�O�U�H�d�5�k�:�;�;�;��I�I�e�A�g�t�,�,�E��E�{�c�!�!�$�$��H�O�O�U�K��e��=�>�>�>���7�N��rc���|||jvrh|dz}|||jvr|dz
}|||jv�|j�|t|||�f��|�||��S|||jvr�|j�|tj||f��|�|dz|��}||dkrt�|j�|t||f��|�|dz|��S||dkr�|j�|t||f��|�|dz|��}|||jvrt�|j�|t||f��|�|dz|��}||dkrt�|j�|t||f��|dzS|�||��}||dkrt�|j�|t||f��|�|dz|��}|S)zTokenize a formula.r�:�<�>�=)
�NEGATORSrrr�formula�QUANTIFIERSr�Declarationr*rr
�LOGICr1r)s    rr9zTNTLexer.formulamsI����;�$�-�'�'���'�C��s�)�t�}�,�,��q����s�)�t�}�,�,��H�O�O�U�H�d�5��9�o�>�?�?�?��<�<��T�*�*�*���;�$�*�*�*��H�O�O�U�G�$7��e��E�F�F�F��M�M�%��'�4�0�0�E��E�{�c�!�!�$�$��H�O�O�U�K��e��=�>�>�>��<�<��a���.�.�.���;�#����H�O�O�U�K��e��=�>�>�>��L�L��q��$�/�/�E��E�{�$�*�,�,�$�$��H�O�O�U�H�d�5�k�:�;�;�;��L�L��q��$�/�/�E��E�{�c�!�!�$�$��H�O�O�U�K��e��=�>�>�>���7�N��	�	�%��&�&����;�#��� � �������$�u�+�6�7�7�7��	�	�%��'�4�(�(���rc	��|j�||��}|�t�t|jdd���}|D]�}|ddkr�|j�|t|||d�f��|j�|dtj	||d|d�f��|d|�
��krH|j�|dt||d|�
���f��n=��|j�|t|||�
���f��|�
��S)zTokenize a rule.Nrr)�RULES�matchr�sorted�regsrrrr	r0r#)rr r!r?�groups�groups      r�rulez
TNTLexer.rule�s]���
� � ��u�-�-���=� � ���
�1�2�2��'�'���
	G�
	G�E��Q�x�1�}�}��������e�E�!�H�n�1E� F�G�G�G������q��6�>�!%�e�A�h�u�Q�x�&7�!8�!:�;�;�;���8�u�y�y�{�{�*�*��H�O�O�U�1�X�w�%)�%��(�5�9�9�;�;�*>�%?�%A�B�B�B����
�H�O�O�U�G�T�%��	�	���2C�-D�E�F�F�F��y�y�{�{�rc���|}|||jvr|dz
}|||jv�|j�|t||f��|j�|dzt||dz|�f��|}|j�||��}|�t�||���dkrt�|j�|�	��tj|�d��f��|j�|���t||���f��|���dzS)zTokenize a line referral.rNr/r)
�NUMBERSrrr
r�LINENOSr?rr#r r	r0rC)rr r!r#r?s     r�linenozTNTLexer.lineno�s5�����3�i�t�|�+�+��1�H�C��3�i�t�|�+�+�������T�%�[�9�:�:�:������q��$��U�1�W�S�[�(9�:�;�;�;�����"�"�4��/�/���=� � ���	�	�����#�#� � ���������������A���G�H�H�H����������k�4��	�	���3D�E�F�F�F��y�y�{�{�Q��rc��|}	||dkr|dz
}||dk�n#t$rt|��}YnwxYw||kr*|j�|t|||�f��|�||��}|S)z?Mark everything from ``start`` to the end of the line as Error.�
r)rrrrrr$r)s    r�error_till_line_endzTNTLexer.error_till_line_end�s�����	��s�)�t�#�#��q����s�)�t�#�#����	�	�	��d�)�)�C�C�C�	�����%�<�<��H�O�O�U�E�4��c�	�?�;�<�<�<��o�o�c�4�(�(���
s�"�>�>c�J�g|_|�d|��x}}||cxkrt|��k�r�n�n�	|||jvr|dz
}|||jv�||kr�|j�|t
j|||�f��t|j��}	|�||d��x}}n2#t$r%|j|d�=|�||��x}}Y��wxYw|j	�
||��}|�l|j�|t|||����f��|���x}}|�||��x}}��b~||dvr3|j�|t||f��|dz
}|dz
}n�t|j��}	|�||��x}}np#ttf$r\|j|d�=|||jvr|dz
}|||jv�|j�|t"|||�f��|}YnwxYwt|j��}	|�||d��x}}n3#t$r&|j|d�=|�||��x}}Y���wxYwt|j��}	|�||��x}}n3#t$r&|j|d�=|�||��x}}Y���wxYw|�||��x}}||dkryt|j��}	|�||��x}}n3#t$r&|j|d�=|�||��x}}Y���wxYw|�||��x}}nB#t($r5	|j|d�=n#t*$rYnwxYw|�||��YnwxYw||cxkrt|��k���n|jS)zReturns a list of TNT tokens.rrTNz[]r.)rr$rrFrr	r0rrK�COMMENTr?rr#rr9�RecursionErrorrrrDrHr�	NameError)rr!r r#�origr?s      r�get_tokens_unprocessedzTNTLexer.get_tokens_unprocessed�s�������o�o�a��.�.�.����s�&�&�&�&�S��Y�Y�&�&�&�&�&�H
6��3�i�4�<�/�/��1�H�C��3�i�4�<�/�/��%�<�<��H�O�O�U�F�N�D��s��O�$L�M�M�M��t�x�=�=�D�!�&*�o�o�c�4��&F�&F�F�����)�!�!�!� �H�T�U�U�O�&*�&>�&>�s�D�&I�&I�I��� ��!����
��*�*�4��7�7���$��H�O�O�U�G�T�%��	�	���:K�5L�$M�N�N�N�"'�)�)�+�+�-�E�C�"&�":�":�5�$�"G�"G�G�E�C�����;�$�&�&��H�O�O�U�G�T�%�[�$A�B�B�B��Q�J�E��1�H�C�C��t�x�=�=�D�$�&*�l�l�5�$�&?�&?�?�����*�N�;�$�$�$� �H�T�U�U�O�"�3�i�t��>�>��1�H�C�#�3�i�t��>�>�������t�E�#�I��(G�H�H�H� #����$�����4�8�}�}���"&�/�/�#�t�T�"B�"B�B�E�C�C��%����������"&�":�":�5�$�"G�"G�G�E�C��H�����
�4�8�}�}���"&�)�)�E�4�"8�"8�8�E�C�C��%����������"&�":�":�5�$�"G�"G�G�E�C��H�����
#�o�o�c�4�8�8�8�����;�#�%�%��t�x�=�=�D�!�&*�k�k�%��&>�&>�>�����)�!�!�!� �H�T�U�U�O�&*�&>�&>�u�d�&K�&K�K��� ��!����#'�/�/�%��">�">�>�E�C����
6�
6�
6���������� �����D������(�(���5�5�5�5�5�
6����I�s�&�&�&�&�S��Y�Y�&�&�&�&�T�x�s��A,N?�-C�N?�,C6�3N?�5C6�6B
N?�AN?�G.�-N?�.A*I�N?�I�N?�3J
�N?�
,J=�9N?�<J=�=N?�K.�-N?�.,L�N?�L�;N?�M3�2N?�3,N#�N?�"N#�#N?�?
O>�

O�O>�
O"�O>�!O"�"O>�=O>N)F)!�__name__�
__module__�__qualname__�__doc__�name�url�aliases�	filenames�
version_addedr�setr<r2r&r'r8r:rFr�re�compiler>rGrMrr$r*r1r9rDrHrKrQ�rrrrs~��������
'�D�
8�C��g�G��	�I��M�
�C��C�$�%�%�E���H�
�
�I���G���I�
�S��[�[�F��s�4�y�y�H��#�j�/�/�K��c�,���G���Y���J��B�J��
	�
	�E��b�j�D�E�E�G��b�j��)�)�G��������������4 � � �D���&���"���N�N�N�N�Nr)rUr\�pygments.lexerr�pygments.tokenrrrrrr	r
r�__all__rr^rr�<module>rbs�����
�	�	�	� � � � � � ����������������������,��z�z�z�z�z�u�z�z�z�z�zr