From: Raymond Hettinger Date: Tue, 15 Jan 2008 20:42:00 +0000 (+0000) Subject: Refactor if/elif chain for clarity and speed X-Git-Tag: v3.0a3~197 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ae138cbfbbfb376917fd29abb6724d56ba5fc081;p=thirdparty%2FPython%2Fcpython.git Refactor if/elif chain for clarity and speed --- diff --git a/Lib/Queue.py b/Lib/Queue.py index 726cf3eb6cef..f8aa0af23180 100644 --- a/Lib/Queue.py +++ b/Lib/Queue.py @@ -102,18 +102,17 @@ class Queue: """ self.not_full.acquire() try: - if not block: - if self.maxsize > 0 and self._qsize() == self.maxsize: - raise Full - elif timeout is None: - if self.maxsize > 0: + if self.maxsize > 0: + if not block: + if self._qsize() == self.maxsize: + raise Full + elif timeout is None: while self._qsize() == self.maxsize: self.not_full.wait() - else: - if timeout < 0: + elif timeout < 0: raise ValueError("'timeout' must be a positive number") - endtime = _time() + timeout - if self.maxsize > 0: + else: + endtime = _time() + timeout while self._qsize() == self.maxsize: remaining = endtime - _time() if remaining <= 0.0: @@ -152,9 +151,9 @@ class Queue: elif timeout is None: while not self._qsize(): self.not_empty.wait() + elif timeout < 0: + raise ValueError("'timeout' must be a positive number") else: - if timeout < 0: - raise ValueError("'timeout' must be a positive number") endtime = _time() + timeout while not self._qsize(): remaining = endtime - _time()