U
    nufœ  ã                   @   s&   d dl mZ edd„ ƒZddd„ZdS )	é    )Úcontextmanagerc              
   c   s4   t | |ƒ}zt| ||ƒ dV  W 5 t| ||ƒ X dS )z<
    Like pytest's monkeypatch, but as a value manager.
    N)ÚgetattrÚsetattr)ÚobjZattribute_nameÚ	new_valueÚ	old_value© r   ú//tmp/pip-unpacked-wheel-ol4ehs9f/jedi/common.pyÚmonkeypatch   s
    

r
   ú    c                    sT   d}| r.| d dkr.|| d 7 }| dd… } q|   d¡}d t‡ fdd„|ƒ¡| S )zAThis function indents a text block with a default of four spaces.Ú éÿÿÿÿÚ
Nc                    s   ˆ |  S )Nr   )Ús©Ú	indentionr   r	   Ú<lambda>   ó    zindent_block.<locals>.<lambda>)ÚsplitÚjoinÚmap)Útextr   ÚtempÚlinesr   r   r	   Úindent_block   s    
r   N)r   )Ú
contextlibr   r
   r   r   r   r   r	   Ú<module>   s   
