B ] @ s^ d Z ddlZddlZddlZddlmZ ddlmZ ddddd d ddd dddgZG dd d ej Z G dd d ej ZG dd deZ G dd dZG dd dee e ZG dd deeZdd Zdd ZG dd de ZG dd de ZG dd deZG d d deZG d!d de ZG d"d# d#ZG d$d d ee ZG d%d deeZG d&d de ZdS )'z4Utilities for with-statement contexts. See PEP 343. N)deque)wrapsasynccontextmanagercontextmanagerclosingnullcontextAbstractContextManagerAbstractAsyncContextManagerAsyncExitStackContextDecorator ExitStackredirect_stdoutredirect_stderrsuppressc @ s2 e Zd ZdZdd Zejdd Zedd Z dS ) r z,An abstract base class for context managers.c C s | S )z0Return `self` upon entering the runtime context. )selfr r //opt/alt/python37/lib64/python3.7/contextlib.py __enter__ s z AbstractContextManager.__enter__c C s dS )z9Raise any exception triggered within the runtime context.Nr )r exc_type exc_value tracebackr r r __exit__ s zAbstractContextManager.__exit__c C s | t krt|ddS tS )Nr r )r _collections_abc_check_methodsNotImplemented)clsCr r r __subclasshook__ s z'AbstractContextManager.__subclasshook__N) __name__ __module____qualname____doc__r abcabstractmethodr classmethodr r r r r r s c @ s2 e Zd ZdZdd Zejdd Zedd Z dS ) r z9An abstract base class for asynchronous context managers.c s | S )z0Return `self` upon entering the runtime context.r )r r r r __aenter__&