Your IP : 216.73.216.61
B
���]� � @ sB d dl Z d dlZeZe j�dd�ZG dd� dej�Zd dd�Z dS )
� N�repr�reprlibc @ s0 e Zd ZdZdd� Zdd� Zdd� Zdd � Zd
S )�SafeReprz� subclass of repr.Repr that limits the resulting size of repr()
and includes information on exceptions raised during the call.
c C s | � tjj| |�S )N)�_callhelperr �Reprr )�self�x� r �@/opt/alt/python37/lib/python3.7/site-packages/py/_io/saferepr.pyr s z
SafeRepr.reprc C s� dd� }||d | j � �}t|�| j kr�td| j d d �}td| j d | �}||d |� |t|�| d � �}|d |� d |t|�| d � }|S )Nc S sL d| krt j�d�| S d| kr0t j�d�| S t j�d�| �dd� S d S )N�'z'%s'�"z"%s"z\')�py�builtinZ_totext�replace)�ur r r
r s
z#SafeRepr.repr_unicode.<locals>.reprr � � z...)� maxstring�len�max)r r �levelr �s�i�jr r r
�repr_unicode s $$zSafeRepr.repr_unicodec C s | � t|�S )N)r �builtin_repr)r r r r r r
�
repr_instance s zSafeRepr.repr_instancec G s� y||f|�� }W n� t jjk
r, � Y n� t�� \}}}t|dd�}yt|�} W n( t jjk
rr � Y n d} Y nX d|| |jjt |�f S t
|�| jkr�td| jd d �}
td| jd |
�}|d |
� d |t
|�| d � }|S d S )N�__name__�unknownz/<[%s("%s") raised in repr()] %s object at 0x%x>r r r z...)
r
r Z_sysex�sys�exc_info�getattr�str� __class__r �idr �maxsizer )r �callr �argsr �cls�e�tbZexc_namer r r r r r
r # s(
$zSafeRepr._callhelperN)r �
__module__�__qualname__�__doc__r r r r r r r r
r s
r �� c C s"