[Python-checkins] python/dist/src/Lib Queue.py, 1.19, 1.20 mutex.py, 1.11, 1.12 pydoc.py, 1.89, 1.90 shlex.py, 1.21, 1.22 threading.py, 1.39, 1.40

Update of /cvsroot/python/python/dist/src/Lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1631/Lib Modified Files: Queue.py mutex.py pydoc.py shlex.py threading.py Log Message: * Move collections.deque() in from the sandbox * Add unittests, newsitem, and whatsnew * Apply to Queue.py mutex.py threading.py pydoc.py and shlex.py * Docs are forthcoming Index: Queue.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/Queue.py,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** Queue.py 1 Jul 2003 05:34:27 -0000 1.19 --- Queue.py 29 Jan 2004 06:37:49 -0000 1.20 *************** *** 2,5 **** --- 2,6 ---- from time import time as _time, sleep as _sleep + from collections import deque __all__ = ['Empty', 'Full', 'Queue'] *************** *** 185,189 **** def _init(self, maxsize): self.maxsize = maxsize ! self.queue = [] def _qsize(self): --- 186,190 ---- def _init(self, maxsize): self.maxsize = maxsize ! self.queue = deque() def _qsize(self): *************** *** 204,206 **** # Get an item from the queue def _get(self): ! return self.queue.pop(0) --- 205,207 ---- # Get an item from the queue def _get(self): ! return self.queue.popleft() Index: mutex.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/mutex.py,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** mutex.py 30 Jun 2002 03:39:14 -0000 1.11 --- mutex.py 29 Jan 2004 06:37:49 -0000 1.12 *************** *** 13,21 **** """ class mutex: def __init__(self): """Create a new mutex -- initially unlocked.""" self.locked = 0 ! self.queue = [] def test(self): --- 13,23 ---- """ + from collections import deque + class mutex: def __init__(self): """Create a new mutex -- initially unlocked.""" self.locked = 0 ! self.queue = deque() def test(self): *************** *** 45,49 **** function with its argument.""" if self.queue: ! function, argument = self.queue.pop(0) function(argument) else: --- 47,51 ---- function with its argument.""" if self.queue: ! function, argument = self.queue.popleft() function(argument) else: Index: pydoc.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/pydoc.py,v retrieving revision 1.89 retrieving revision 1.90 diff -C2 -d -r1.89 -r1.90 *** pydoc.py 31 Oct 2003 13:05:21 -0000 1.89 --- pydoc.py 29 Jan 2004 06:37:49 -0000 1.90 *************** *** 56,59 **** --- 56,60 ---- from repr import Repr from string import expandtabs, find, join, lower, split, strip, rfind, rstrip + from collections import deque # --------------------------------------------------------- common routines *************** *** 686,690 **** # List the mro, if non-trivial. ! mro = list(inspect.getmro(object)) if len(mro) > 2: hr.maybe() --- 687,691 ---- # List the mro, if non-trivial. ! mro = deque(inspect.getmro(object)) if len(mro) > 2: hr.maybe() *************** *** 764,768 **** while attrs: if mro: ! thisclass = mro.pop(0) else: thisclass = attrs[0][2] --- 765,769 ---- while attrs: if mro: ! thisclass = mro.popleft() else: thisclass = attrs[0][2] *************** *** 1084,1088 **** # List the mro, if non-trivial. ! mro = list(inspect.getmro(object)) if len(mro) > 2: push("Method resolution order:") --- 1085,1089 ---- # List the mro, if non-trivial. ! mro = deque(inspect.getmro(object)) if len(mro) > 2: push("Method resolution order:") *************** *** 1153,1157 **** while attrs: if mro: ! thisclass = mro.pop(0) else: thisclass = attrs[0][2] --- 1154,1158 ---- while attrs: if mro: ! thisclass = mro.popleft() else: thisclass = attrs[0][2] Index: shlex.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/shlex.py,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** shlex.py 20 Apr 2003 01:57:02 -0000 1.21 --- shlex.py 29 Jan 2004 06:37:49 -0000 1.22 *************** *** 10,13 **** --- 10,14 ---- import os.path import sys + from collections import deque try: *************** *** 46,54 **** self.escapedquotes = '"' self.state = ' ' ! self.pushback = [] self.lineno = 1 self.debug = 0 self.token = '' ! self.filestack = [] self.source = None if self.debug: --- 47,55 ---- self.escapedquotes = '"' self.state = ' ' ! self.pushback = deque() self.lineno = 1 self.debug = 0 self.token = '' ! self.filestack = deque() self.source = None if self.debug: *************** *** 60,64 **** if self.debug >= 1: print "shlex: pushing token " + `tok` ! self.pushback.insert(0, tok) def push_source(self, newstream, newfile=None): --- 61,65 ---- if self.debug >= 1: print "shlex: pushing token " + `tok` ! self.pushback.appendleft(tok) def push_source(self, newstream, newfile=None): *************** *** 66,70 **** if isinstance(newstream, basestring): newstream = StringIO(newstream) ! self.filestack.insert(0, (self.infile, self.instream, self.lineno)) self.infile = newfile self.instream = newstream --- 67,71 ---- if isinstance(newstream, basestring): newstream = StringIO(newstream) ! self.filestack.appendleft((self.infile, self.instream, self.lineno)) self.infile = newfile self.instream = newstream *************** *** 79,84 **** "Pop the input source stack." self.instream.close() ! (self.infile, self.instream, self.lineno) = self.filestack[0] ! self.filestack = self.filestack[1:] if self.debug: print 'shlex: popping to %s, line %d' \ --- 80,84 ---- "Pop the input source stack." self.instream.close() ! (self.infile, self.instream, self.lineno) = self.filestack.popleft() if self.debug: print 'shlex: popping to %s, line %d' \ *************** *** 89,93 **** "Get a token from the input stream (or from stack if it's nonempty)" if self.pushback: ! tok = self.pushback.pop(0) if self.debug >= 1: print "shlex: popping token " + `tok` --- 89,93 ---- "Get a token from the input stream (or from stack if it's nonempty)" if self.pushback: ! tok = self.pushback.popleft() if self.debug >= 1: print "shlex: popping token " + `tok` *************** *** 227,231 **** self.token = self.token + nextchar else: ! self.pushback.insert(0, nextchar) if self.debug >= 2: print "shlex: I see punctuation in word state" --- 227,231 ---- self.token = self.token + nextchar else: ! self.pushback.appendleft(nextchar) if self.debug >= 2: print "shlex: I see punctuation in word state" Index: threading.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/threading.py,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -d -r1.39 -r1.40 *** threading.py 5 Nov 2003 23:02:59 -0000 1.39 --- threading.py 29 Jan 2004 06:37:49 -0000 1.40 *************** *** 11,14 **** --- 11,15 ---- from time import time as _time, sleep as _sleep from traceback import format_exc as _format_exc + from collections import deque # Rename some stuff so "from threading import *" is safe *************** *** 640,644 **** self.wc = Condition(self.mon) self.limit = limit ! self.queue = [] def put(self, item): --- 641,645 ---- self.wc = Condition(self.mon) self.limit = limit ! self.queue = deque() def put(self, item): *************** *** 658,662 **** self._note("get(): queue empty") self.rc.wait() ! item = self.queue.pop(0) self._note("get(): got %s, %d left", item, len(self.queue)) self.wc.notify() --- 659,663 ---- self._note("get(): queue empty") self.rc.wait() ! item = self.queue.popleft() self._note("get(): got %s, %d left", item, len(self.queue)) self.wc.notify()
participants (1)
-
rhettingerï¼ projects.sourceforge.net