File: //snap/core20/2599/lib/python3/dist-packages/urwid/__pycache__/compat.cpython-38.pyc
U
��dZI
� @ s� d dl mZmZ d dlZzeZW n ek
r8 eZY nX ejdkZer~dd� Z dd� Z
dd� ZeZeZ
eZefZddd �Zn:eZ eZ
d
d� Zdd� ZeZ
eZeefZddd
�Zed� dd� ZdS )� )�division�print_functionN)� r c C s | S �N� ��xr r �./usr/lib/python3/dist-packages/urwid/compat.py�<lambda>( � r
c C s
t | g�S r )�bytesr r r r r
) r c C s
| � d�S )Nz iso8859-1)�encoder r r r r
* r c C s: z*|dkr| � }|j |k r$|�|��|�W 5 d}d}X dS )zi
Reraise an exception.
Taken from "six" library (https://pythonhosted.org/six/).
N)�
__traceback__�with_traceback)�tp�value�tbr r r �reraise0 s
r c C s | S r r r r r r r
A r c C s t � �dd� | D ��S )Nc S s g | ]}t |��qS r )�chr)�.0�cr r r �
<listcomp>B s z<lambda>.<locals>.<listcomp>)r �joinr r r r r
B r c C sB |dkr*t �d�}|j}|dkr&|j}~n|dkr6|}td� dS )zExecute code in a namespace.N� zexec _code_ in _globs_, _locs_)�sys� _getframe� f_globals�f_locals�exec)Z_code_Z_globs_Z_locs_�framer r r �exec_K s
r zedef reraise(tp, value, tb=None):
try:
raise tp, value, tb
finally:
tb = None
c s&