diff options
author | John Snow <jsnow@redhat.com> | 2021-06-07 16:06:37 -0400 |
---|---|---|
committer | John Snow <jsnow@redhat.com> | 2021-06-18 16:10:07 -0400 |
commit | eac8aabc92f80d9a41d9f01163921472e309334c (patch) | |
tree | 2a79619264b6c7308e0b9cfe4d0250cc1cadd2af /python | |
parent | 6e24a7edb8b64854636acd1f74abd8e5f1735b50 (diff) |
python/qmp: return generic type from context manager
__enter__ can be invoked from a subclass, so it needs a more flexible
type.
Signed-off-by: John Snow <jsnow@redhat.com>
Message-id: 20210607200649.1840382-31-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com>
Diffstat (limited to 'python')
-rw-r--r-- | python/qemu/qmp/__init__.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/python/qemu/qmp/__init__.py b/python/qemu/qmp/__init__.py index ba0d2281d6..376954cb6d 100644 --- a/python/qemu/qmp/__init__.py +++ b/python/qemu/qmp/__init__.py @@ -30,6 +30,7 @@ from typing import ( TextIO, Tuple, Type, + TypeVar, Union, cast, ) @@ -220,7 +221,9 @@ class QEMUMonitorProtocol: if ret is None: raise QMPConnectError("Error while reading from socket") - def __enter__(self) -> 'QEMUMonitorProtocol': + T = TypeVar('T') + + def __enter__(self: T) -> T: # Implement context manager enter function. return self |