File: //usr/lib/python3/dist-packages/twisted/python/__pycache__/htmlizer.cpython-310.pyc
o
�b* � @ s� d Z ddlZddlZddlmZ ddlmZ ddlmZ G dd� d�Z G d d
� d
�Z
G dd� de
�Ze
fd
d�Zdd� Z
edkrEe
� dS dS )z"
HTML rendering of Python source.
� N)�escape)�List� )�reflectc @ s4 e Zd ZdZd\ZZd ZZdZdd� Z dd� Z
d S )
�TokenPrinterzU
Format a stream of tokens and intermediate whitespace, for pretty-printing.
)r r r �utf-8c C s
|| _ dS )zJ
@param writer: A file-like object, opened in bytes mode.
N)�writer)�selfr � r
�9/usr/lib/python3/dist-packages/twisted/python/htmlizer.py�__init__ s
zTokenPrinter.__init__c
C s8 t td�r|tjkr|| _d S t|t�s|�| j�}|\}}|\}} | j|k r8| �d|| j � |d| _| _ | �d|| j � | j
rKd}d| _n&|tjkrat
�|�rXd}n| jr^d}nd }ntj�|�}|d usmJ �|�� }| �||� | | _ | j|�d�7 _| j|kr�d| _ |d
v | _
|dkr�d| _d S d S )N�ENCODING�
r � �
identifierr �keyword� parameter�variable)s defs class� :)�hasattr�tokenizer
�encoding�
isinstance�bytes�encode�currentLiner �
currentCol�lastIdentifier�
parameters�NAMEr � iskeyword�tok_name�get�lower�count)
r �type�token�sCoordinates�eCoordinates�line�srow�scol�erow�ecolr
r
r �
printtoken s@
�zTokenPrinter.printtokenN)�__name__�
__module__�__qualname__�__doc__r r r r r r r. r
r
r
r r s r c @ s4 e Zd ZU dZg Zee ed<