mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
Revert "bpo-38870: Remove dependency on contextlib to avoid performance regression on import (GH-17376)" (GH-17687)
This reverts commit ded8888fbc
.
This commit is contained in:
parent
4b3b1226e8
commit
d69cbeb99d
1 changed files with 6 additions and 13 deletions
19
Lib/ast.py
19
Lib/ast.py
|
@ -597,22 +597,15 @@ class _Unparser(NodeVisitor):
|
|||
self._buffer.clear()
|
||||
return value
|
||||
|
||||
class _Block:
|
||||
@contextmanager
|
||||
def block(self):
|
||||
"""A context manager for preparing the source for blocks. It adds
|
||||
the character':', increases the indentation on enter and decreases
|
||||
the indentation on exit."""
|
||||
def __init__(self, unparser):
|
||||
self.unparser = unparser
|
||||
|
||||
def __enter__(self):
|
||||
self.unparser.write(":")
|
||||
self.unparser._indent += 1
|
||||
|
||||
def __exit__(self, exc_type, exc_value, traceback):
|
||||
self.unparser._indent -= 1
|
||||
|
||||
def block(self):
|
||||
return self._Block(self)
|
||||
self.write(":")
|
||||
self._indent += 1
|
||||
yield
|
||||
self._indent -= 1
|
||||
|
||||
@contextmanager
|
||||
def delimit(self, start, end):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue