diff options
author | Tim Peters <tim.peters@gmail.com> | 2006-02-28 18:44:41 +0000 |
---|---|---|
committer | Tim Peters <tim.peters@gmail.com> | 2006-02-28 18:44:41 +0000 |
commit | 400cbc3a4490d2d8358fcec394fed43affb3ee9c (patch) | |
tree | 203891ad3a4bb4a46ae153809e1eb9ca685f3961 /Lib/test/nested.py | |
parent | 85b1052efe2112cdc36aeb9df03ea4d07d703e7e (diff) | |
download | cpython-git-400cbc3a4490d2d8358fcec394fed43affb3ee9c.tar.gz |
Set EOL style to native.
Diffstat (limited to 'Lib/test/nested.py')
-rw-r--r-- | Lib/test/nested.py | 80 |
1 files changed, 40 insertions, 40 deletions
diff --git a/Lib/test/nested.py b/Lib/test/nested.py index a20cf43e7a..b5030e07fc 100644 --- a/Lib/test/nested.py +++ b/Lib/test/nested.py @@ -1,40 +1,40 @@ -import sys
-from collections import deque
-
-
-class nested(object):
- def __init__(self, *contexts):
- self.contexts = contexts
- self.entered = None
-
- def __context__(self):
- return self
-
- def __enter__(self):
- if self.entered is not None:
- raise RuntimeError("Context is not reentrant")
- self.entered = deque()
- vars = []
- try:
- for context in self.contexts:
- mgr = context.__context__()
- vars.append(mgr.__enter__())
- self.entered.appendleft(mgr)
- except:
- self.__exit__(*sys.exc_info())
- raise
- return vars
-
- def __exit__(self, *exc_info):
- # Behave like nested with statements
- # first in, last out
- # New exceptions override old ones
- ex = exc_info
- for mgr in self.entered:
- try:
- mgr.__exit__(*ex)
- except:
- ex = sys.exc_info()
- self.entered = None
- if ex is not exc_info:
- raise ex[0], ex[1], ex[2]
+import sys +from collections import deque + + +class nested(object): + def __init__(self, *contexts): + self.contexts = contexts + self.entered = None + + def __context__(self): + return self + + def __enter__(self): + if self.entered is not None: + raise RuntimeError("Context is not reentrant") + self.entered = deque() + vars = [] + try: + for context in self.contexts: + mgr = context.__context__() + vars.append(mgr.__enter__()) + self.entered.appendleft(mgr) + except: + self.__exit__(*sys.exc_info()) + raise + return vars + + def __exit__(self, *exc_info): + # Behave like nested with statements + # first in, last out + # New exceptions override old ones + ex = exc_info + for mgr in self.entered: + try: + mgr.__exit__(*ex) + except: + ex = sys.exc_info() + self.entered = None + if ex is not exc_info: + raise ex[0], ex[1], ex[2] |