Current File : //kunden/usr/share/gdb/python/gdb/__pycache__/styling.cpython-39.pyc
a

ɱZhx
�@s�dZddlZzpddlmZmZmZddlmZmZm	Z	ddl
mZdadd�Z
dd	�ZGd
d�de�Ziadd
�Zdd�ZWndd	�Zdd�ZYn0dS)zUtilities for styling.�N)�
formatters�lexers�	highlight)�Error�Comment�Text)�TokenMergeFiltercCstdurt��atS�N)�
_formatterrZTerminalFormatter�rr�$/usr/share/gdb/python/gdb/styling.py�
get_formattersr
cCsBz.tj|dd�}t�}t|||��t��d�WSYdS0dS)NF)Zstripnl�backslashreplace)rZget_lexer_for_filenamer
r�encode�gdbZhost_charset)�filename�contents�lexer�	formatterrrr�colorize"s�rcs(eZdZedd��Z�fdd�Z�ZS)�HandleNasmCommentsccsTd}|D]F\}}|tur$|dkr$d}|rD|tur>|dkr>d}ntj}||fVqdS)NF�#T�
)rrr�Single)r�streamZ
in_commentZttype�valuerrr�fix_comments.szHandleNasmComments.fix_commentscstj}t��||||��Sr	)rr�super�filter)�selfrr�f��	__class__rrr;szHandleNasmComments.filter)�__name__�
__module__�__qualname__�staticmethodrr�
__classcell__rrr!rr-s
rcCs|d}z.t�d�}|dkr0|��dd�dkr0d}WnYn0|tvrtt�|�t|<t|�t��t|�d�t|S)NZasmzdisassembly-flavorZintel�Zi386ZnasmZraiseonerror)rZ	parameter�name�_asm_lexersrZget_lexer_by_nameZ
add_filterr)�gdbarchZ
lexer_typeZflavorrrr�__get_asm_lexerAs
r,cCs:z$t|�}t�}t|||�����WS|YS0dSr	)r,r
r�rstripr)�contentr+rrrrr�colorize_disasmVsr/cCsdSr	r)rrrrrrascCsdSr	r)r.r+rrrr/ds)�__doc__rZpygmentsrrrZpygments.tokenrrrZpygments.filtersrr
r
rrr*r,r/rrrr�<module>s