From 04dff506696151e12e5726ad718bd164ce8c4e29 Mon Sep 17 00:00:00 2001 From: Denis Bilenko Date: Fri, 22 May 2009 12:29:13 +0700 Subject: [PATCH] proc.RunningProcSet: add __contains__ method htat recognises raw greenlets as well --- eventlet/proc.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/eventlet/proc.py b/eventlet/proc.py index de3c4f3..add269c 100644 --- a/eventlet/proc.py +++ b/eventlet/proc.py @@ -683,6 +683,15 @@ class RunningProcSet(object): for p in self.args[0]: p.link(lambda p: self.procs.discard(p)) + def __contains__(self, item): + if isinstance(item, api.Greenlet): + # special case for "api.getcurrent() in running_proc_set" to work + for x in self.procs: + if x.greenlet == item: + return True + else: + return item in self.procs + def __iter__(self): return iter(self.procs)