관리-도구
편집 파일: contextlib2.pyc
� �s�Wc @ 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( ( s<