From: Zac Medico Date: Mon, 10 Sep 2012 00:07:18 +0000 (-0700) Subject: ObjectProxy: implement __enter__ and __exit__ X-Git-Tag: v2.2.0_alpha126~18 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=ba259d2ef30a06d5bae4f8044423e58ae0350e60;p=portage.git ObjectProxy: implement __enter__ and __exit__ --- diff --git a/pym/portage/proxy/objectproxy.py b/pym/portage/proxy/objectproxy.py index 92b36d111..a755774ae 100644 --- a/pym/portage/proxy/objectproxy.py +++ b/pym/portage/proxy/objectproxy.py @@ -1,4 +1,4 @@ -# Copyright 2008-2009 Gentoo Foundation +# Copyright 2008-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 import sys @@ -30,6 +30,13 @@ class ObjectProxy(object): result = object.__getattribute__(self, '_get_target')() return result(*args, **kwargs) + def __enter__(self): + return object.__getattribute__(self, '_get_target')().__enter__() + + def __exit__(self, exc_type, exc_value, traceback): + return object.__getattribute__(self, '_get_target')().__exit__( + exc_type, exc_value, traceback) + def __setitem__(self, key, value): object.__getattribute__(self, '_get_target')()[key] = value