Metadata-Version: 1.1
Name: hqueue
Version: 0.2.0
Summary: asyncio.Queue with history
Home-page: https://github.com/hsharrison/history-queue
Author: Henry S. Harrison
Author-email: henry.schafer.harrison@gmail.com
License: BSD
Description: ========
        Overview
        ========
        
        
        
        ``asyncio.Queue`` with history::
        
        Objects put on a ``HistoryQueue`` are gathered in tuples,
        with the first element being the next item on the queue,
        followed by items add previously.
        
        ``HistoryQueue`` can also be thought of as as asynchronous ``collections.deque``,
        with ``put`` analogous to ``deque.appendleft``
        and ``get`` returning the entire deque (as a tuple).
        
            >>> from hqueue import HistoryQueue
            >>> hq = HistoryQueue(history_size=2)
            >>> hq.put_nowait(0)
            >>> hq.put_nowait(1)
            >>> hq.get_nowait()
            (0,)
            >>> hq.get_nowait()
            (1, 0)
            >>> hq.put_nowait(2)
            >>> hq.put_nowait(3)
            >>> hq.put_nowait(4)
            >>> hq.get_nowait()
            (2, 1, 0)
            >>> hq.get_nowait()
            (3, 2, 1)
        
        For ease of illustration, in the above examples we use ``put_nowait`` and ``get_nowait``,
        the synchronous counterparts of ``put`` and ``wait``, respectively.
        In a coroutine, ``await put()`` could be used to block until the queue is not full,
        and ``await get()`` to block until there is an item in the queue.
        
        See Also
        --------
        ``asyncio.Queue``
        ``collections.deque``
        
        
        
        Changelog
        =========
        
        0.1.0 (2016-06-28)
        ------------------
        
        * First prototype.
        
        0.2.0 (2016-07-01)
        ------------------
        
        * First release on PyPI.
        
Keywords: asyncio,deque,queue,history
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.5
Classifier: Topic :: Utilities
