B
    é¹`f  ã               @   sÀ   d dl Z d dlZe jd  dkZerHefZeefZe	ej
fZeZeZeZnefZefZe	fZeZeZeZddd„Zer~dd„ Znd	d„ Zerždd
d„Zedƒ nd dlZeedƒZddd„Z[dS )é    Né   úlatin-1Ústrictc             C   s   t | tƒr|  ||¡S | S )zn If ``s`` is an instance of ``binary_type``, return
    ``s.decode(encoding, errors)``, otherwise return ``s``)Ú
isinstanceÚbinary_typeÚdecode)ÚsÚencodingÚerrors© r   ú[/home/kop/projects/devel/pgwui/test_venv/lib/python3.7/site-packages/pyramid_mako/compat.pyÚtext_   s    
r   c             C   s
   t | dƒS )NÚ__iter__)Úhasattr)Úvr   r   r   Úis_nonstr_iter!   s    r   c             C   s   t | tƒrdS t| dƒS )NFr   )r   Ústrr   )r   r   r   r   r   '   s    
c             C   sB   |dkr*t  d¡}|j}|dkr&|j}~n|dkr6|}tdƒ dS )zExecute code in a namespace.Né   zexec code in globs, locs)ÚsysÚ	_getframeÚ	f_globalsÚf_localsÚexec)ÚcodeZglobsZlocsÚframer   r   r   Úexec_/   s    
r   z9def reraise(tp, value, tb=None):
    raise tp, value, tb
r   c             C   s(   |d kr| }|j |k	r | |¡‚|‚d S )N)Ú__traceback__Úwith_traceback)ÚtpÚvalueÚtbr   r   r   ÚreraiseF   s
    

r!   )r   r   )NN)N)r   ÚtypesÚversion_infoÚPY2Ú
basestringÚstring_typesÚintÚlongÚinteger_typesÚtypeZ	ClassTypeÚclass_typesÚunicodeÚ	text_typer   r   Úbytesr   r   r   ÚbuiltinsÚgetattrr!   r   r   r   r   Ú<module>   s6   





