From d0c6ba956fca28785ad4dea6423cd44fd1124cad Mon Sep 17 00:00:00 2001 From: Alex Waygood Date: Thu, 6 Jul 2023 14:23:02 +0100 Subject: gh-104683: clinic.py: Don't needlessly reimplement `contextlib.redirect_stdout` (#106478) clinic.py: Don't needlessly reimplement `contextlib.redirect_stdout` --- Tools/clinic/clinic.py | 20 ++------------------ 1 file changed, 2 insertions(+), 18 deletions(-) diff --git a/Tools/clinic/clinic.py b/Tools/clinic/clinic.py index 7ada7e9..306dca8 100755 --- a/Tools/clinic/clinic.py +++ b/Tools/clinic/clinic.py @@ -1617,19 +1617,6 @@ class CLanguage(Language): return clinic.get_destination('block').dump() - - -@contextlib.contextmanager -def OverrideStdioWith(stdout): - saved_stdout = sys.stdout - sys.stdout = stdout - try: - yield - finally: - assert sys.stdout is stdout - sys.stdout = saved_stdout - - def create_regex( before: str, after: str, @@ -2331,17 +2318,14 @@ def compute_checksum( return s - - class PythonParser: def __init__(self, clinic: Clinic) -> None: pass def parse(self, block: Block) -> None: - s = io.StringIO() - with OverrideStdioWith(s): + with contextlib.redirect_stdout(io.StringIO()) as s: exec(block.input) - block.output = s.getvalue() + block.output = s.getvalue() class Module: -- cgit v0.12