File: //usr/lib/python3/dist-packages/twisted/conch/insults/__pycache__/helper.cpython-310.pyc
o
�b�? � @ s d Z ddlZddlZddlmZ ddlmZ ddlmZ ddl m
Z
mZmZ ddl
mZ ddlmZ dd lmZ dd
lmZmZ dZdZed
�\ ZZZZZZZZ Z!G dd� dej"�Z#e#Z$eedddd�ddd� eej%�G dd� dej&��Z'G dd� de(�Z)G dd� de'�Z*g d�Z+dS )z<
Partial in-memory terminal emulator
@author: Jp Calderone
� N)�implementer)�Version)�insults)�defer�protocol�reactor)�Logger)�_textattributes)� iterbytes)�
deprecated�deprecatedModuleAttribute� �( � c @ sR e Zd ZdZdZejddddeedfdd�Z e
edddd ��d
d� �Zdd
� Z
dS )�_FormattingStatez�
Represents the formatting state/attributes of a single character.
Character set, intensity, underlinedness, blinkitude, video
reversal, as well as foreground and background colors made up a
character's attributes.
��charset�bold� underline�blink�reverseVideo�
foreground�
background�_subtractingFc C s4 || _ || _|| _|| _|| _|| _|| _|| _d S �Nr ) �selfr r r r r r r r � r �>/usr/lib/python3/dist-packages/twisted/conch/insults/helper.py�__init__3 s
z_FormattingState.__init__�Twisted�
� r c K s |� � \}}| �||�S )a<
Add a character attribute to a copy of this formatting state.
@param kw: An optional attribute name and value can be provided with
a keyword argument.
@return: A formatting state instance with the new attribute.
@see: L{DefaultFormattingState._withAttribute}.
)�popitem�_withAttribute)r �kw�k�vr r r �wantOneG s z_FormattingState.wantOnec C s� g }| j r
|�d� | jr|�tj� | jr|�tj� | jr%|�tj� | j r.|�tj
� | jtkr;|�t
| j � | jtkrH|�t| j � |rVdd�tt|�� d S dS )Nr z[�;�m� )r �appendr r �BOLDr � UNDERLINEr �BLINKr �
REVERSE_VIDEOr �WHITE�
FOREGROUNDr �BLACK�
BACKGROUND�join�map�str)r �attrsr r r �toVT102V s$
z_FormattingState.toVT102N)�__name__�
__module__�__qualname__�__doc__�compareAttributesr �G0r0 r2 r r r r'