Mini Kabibi Habibi
�
� `[c @ s� d Z d d l Z d d l Z d d l m Z d d l m Z d d d d d d
d g Z e d g 7Z d e f d
� � YZ d e f d � � YZ
d � Z d e f d � � YZ d e f d � � YZ
d e
f d � � YZ d
e
f d � � YZ d e f d � � YZ e j d d k Z e r7d � Z d � Z n d � Z d � Z y d d l m Z Wn e k
rve Z n
Xd � Z d e f d � � YZ d e f d � � YZ d S(! sA contextlib2 - backports and enhancements to the contextlib modulei����N( t deque( t wrapst contextmanagert closingt ContextDecoratort ExitStackt redirect_stdoutt redirect_stderrt suppresst ContextStackc B s) e Z d Z d � Z d � Z d � Z RS( sJ A base class or mixin that enables context managers to work as decorators.c C s t j d t � | j � S( s� Returns the context manager used to actually wrap the call to the
decorated function.
The default implementation just returns *self*.
Overriding this method allows otherwise one-shot context managers
like _GeneratorContextManager to support use as decorators via
implicit recreation.
DEPRECATED: refresh_cm was never added to the standard library's
ContextDecorator API
s2 refresh_cm was never added to the standard library( t warningst warnt DeprecationWarningt _recreate_cm( t self( ( s3 /mingw64/lib/python2.7/site-packages/contextlib2.pyt
refresh_cm s
c C s | S( s6 Return a recreated instance of self.
Allows an otherwise one-shot context manager like
_GeneratorContextManager to support use as
a decorator via implicit recreation.
This is a private interface just for _GeneratorContextManager.
See issue #11647 for details.
( ( R ( ( s3 /mingw64/lib/python2.7/site-packages/contextlib2.pyR
"