HEX
Server: Apache/2.4.67 (Debian)
System: Linux vps-b2547eb4 6.1.0-41-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.158-1 (2025-11-09) x86_64
User: root (0)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/pygments/formatters/__pycache__/other.cpython-311.pyc
�

�E�c����dZddlmZddlmZddlmZddlmZgd�Z	Gd�de��Z
Gd	�d
e��ZdZdZ
Gd
�de��ZdS)z�
    pygments.formatters.other
    ~~~~~~~~~~~~~~~~~~~~~~~~~

    Other formatters: NullFormatter, RawTokenFormatter.

    :copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�)�	Formatter)�get_choice_opt)�Token)�colorize)�
NullFormatter�RawTokenFormatter�TestcaseFormatterc�*�eZdZdZdZddgZdgZd�ZdS)rz;
    Output the text unchanged without any formatting.
    z	Text only�text�nullz*.txtc��|j}|D]E\}}|r)|�|�|�����0|�|���FdS�N)�encoding�write�encode)�self�tokensource�outfile�enc�ttype�values      �;/usr/lib/python3/dist-packages/pygments/formatters/other.py�formatzNullFormatter.formatsd���m��'�	%�	%�L�E�5��
%��
�
�e�l�l�3�/�/�0�0�0�0��
�
�e�$�$�$�$�		%�	%�N)�__name__�
__module__�__qualname__�__doc__�name�aliases�	filenamesr�rrrrsE���������D��v��G��	�I�%�%�%�%�%rrc�4�eZdZdZdZddgZdgZdZd�Zd�Z	d	S)
ra}
    Format tokens as a raw representation for storing token streams.

    The format is ``tokentype<TAB>repr(tokenstring)\n``. The output can later
    be converted to a token stream with the `RawTokenLexer`, described in the
    :doc:`lexer list <lexers>`.

    Only two options are accepted:

    `compress`
        If set to ``'gz'`` or ``'bz2'``, compress the output with the given
        compression algorithm after encoding (default: ``''``).
    `error_color`
        If set to a color name, highlight error tokens using that color.  If
        set but with no value, defaults to ``'red'``.

        .. versionadded:: 0.11

    z
Raw tokens�raw�tokensz*.rawFc�H�tj|fi|��d|_t|dgd�d��|_|�dd��|_|jdurd|_|j�=	t|jd��dS#t$rtd|jz���wxYwdS)	N�ascii�compress)��none�gz�bz2r)�error_colorT�redzInvalid color %r specified)
r�__init__rrr(�getr-r�KeyError�
ValueError�r�optionss  rr/zRawTokenFormatter.__init__>s�����4�+�+�7�+�+�+� ��
�&�w�
�'@�'@�'@�"�F�F��
�"�;�;�}�d�;�;�����t�#�#�$�D����'�
3���)�2�.�.�.�.�.���
3�
3�
3� �!=�!%�!1�"2�3�3�3�
3����(�'s�&A=�="Bc�>��
�	��d��n#t$rtd���wxYw|jdkr+ddl}|�ddd�����j}�j}n?|jdkr&ddl}|�d���
�
�fd	�}�
�fd
�}n�j}�j}|j	rH|D]D\}}d||fz}	|tjur|t|j	|	�����9||	���En|D]\}}|d||fz���|��dS)Nrz3The raw tokens formatter needs a binary output filer+rr)�wb�	r,c�X������|����dSr)rr()r�
compressorrs ��rrz'RawTokenFormatter.format.<locals>.write`s)����
�
�j�1�1�$�7�7�8�8�8�8�8rc�~��������������dSr)r�flush)r9rs��rr;z'RawTokenFormatter.format.<locals>.flushcs2����
�
�j�.�.�0�0�1�1�1��
�
�����rs%r	%r
)
r�	TypeErrorr(�gzip�GzipFile�closer,�
BZ2Compressorr;r-r�Errorr)rrrr=rr;r,rr�liner9s  `       @rrzRawTokenFormatter.formatPs�����	+��M�M�#�������	+�	+�	+��*�+�+�
+�	+�����=�D� � ��K�K�K��m�m�B��a��9�9�G��M�E��M�E�E�
�]�e�
#�
#��J�J�J��*�*�1�-�-�J�
9�
9�
9�
9�
9�
9�
 �
 �
 �
 �
 �
 �
 ��M�E��M�E���		4� +�
 �
 ���u�"�e�U�^�3���E�K�'�'��E�(�4�#3�T�:�:�;�;�;�;��E�$�K�K�K�K�
 �!,�
4�
4���u���k�U�E�N�2�3�3�3�3�
������s��4N)
rrrrrr r!�
unicodeoutputr/rr"rrrr$sY��������&�D��h��G��	�I��M�3�3�3�$$�$�$�$�$rrzG    def testNeedsName(lexer):
        fragment = %r
        tokens = [
zD        ]
        assert list(lexer.get_tokens(fragment)) == tokens
c�(�eZdZdZdZdgZd�Zd�ZdS)r	zU
    Format tokens as appropriate for a new testcase.

    .. versionadded:: 2.0
    �Testcase�testcasec�p�tj|fi|��|j�|jdkrtd���dSdS)N�utf-8z*Only None and utf-8 are allowed encodings.)rr/rr2r3s  rr/zTestcaseFormatter.__init__�sL����4�+�+�7�+�+�+��=�$���'�)A�)A��I�J�J�J�%�$�)A�)Arc	�Z�d}g}g}|D]8\}}|�|��|�|�d|�d|�d����9td�|��fz}d�|��}	t}
|j�|�||	z|
z��nx|�|�d����|�|	�d����|�|
�d����|���dS)Nz            �(z, z),
r)rH)�append�TESTCASE_BEFORE�join�TESTCASE_AFTERrrrr;)rrr�indentation�rawbuf�outbufrr�before�during�afters           rrzTestcaseFormatter.format�s��������'�	I�	I�L�E�5��M�M�%� � � ��M�M�[�[�[�%�%�%����G�H�H�H�H� �B�G�G�F�O�O�#5�5������������=� ��M�M�&�6�/�E�1�2�2�2�2��M�M�&�-�-��0�0�1�1�1��M�M�&�-�-��0�0�1�1�1��M�M�%�,�,�w�/�/�0�0�0��
�
�����rN)rrrrrr r/rr"rrr	r	�sM��������
�D��l�G�K�K�K�
����rr	N)r�pygments.formatterr�
pygments.utilr�pygments.tokenr�pygments.consoler�__all__rrrLrNr	r"rr�<module>rZs����)�(�(�(�(�(�(�(�(�(�(�(� � � � � � �%�%�%�%�%�%�
E�
E�
E��%�%�%�%�%�I�%�%�%�"P�P�P�P�P�	�P�P�P�f��
�������	�����r