From 292d43a7a01cc95061d374736894bafe43d8e61b Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner <inform@tiker.net> Date: Fri, 10 Aug 2018 17:56:13 -0500 Subject: [PATCH] Add context manager functionality for MemoryMap --- pyopencl/__init__.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pyopencl/__init__.py b/pyopencl/__init__.py index eb124749..472d7dc0 100644 --- a/pyopencl/__init__.py +++ b/pyopencl/__init__.py @@ -1033,6 +1033,19 @@ def _add_functionality(): # }}} + # {{{ MemoryMap + + def memory_map_enter(self): + return self + + def memory_map_exit(self, exc_type, exc_val, exc_tb): + self.release() + + MemoryMap.__enter__ = memory_map_enter + MemoryMap.__exit__ = memory_map_exit + + # }}} + # ORDER DEPENDENCY: Some of the above may override get_info, the effect needs # to be visible through the attributes. So get_info attr creation needs to happen # after the overriding is complete. -- GitLab