aboutsummaryrefslogtreecommitdiffstats
path: root/python/urllib3/util/queue.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/urllib3/util/queue.py')
-rw-r--r--python/urllib3/util/queue.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/python/urllib3/util/queue.py b/python/urllib3/util/queue.py
new file mode 100644
index 0000000..d3d379a
--- /dev/null
+++ b/python/urllib3/util/queue.py
@@ -0,0 +1,21 @@
+import collections
+from ..packages import six
+from ..packages.six.moves import queue
+
+if six.PY2:
+ # Queue is imported for side effects on MS Windows. See issue #229.
+ import Queue as _unused_module_Queue # noqa: F401
+
+
+class LifoQueue(queue.Queue):
+ def _init(self, _):
+ self.queue = collections.deque()
+
+ def _qsize(self, len=len):
+ return len(self.queue)
+
+ def _put(self, item):
+ self.queue.append(item)
+
+ def _get(self):
+ return self.queue.pop()