pyutils.collectionz package
===========================
+This subpackage contains some homegrown collections that try to
+emulate :mod:`collections` included in the Python standard library
+(see:
+https://docs.python.org/3/library/collections.html#module-collections).
+It ends with a 'z' so as not to collide with the standard library
+package.
+
Submodules
----------
pyutils.collectionz.bidict module
---------------------------------
-The bidict.BiDict class is a subclass of :py:class:`dict` that
-implements a bidirectional dictionary. That is, it maps each key to a
-value in constant time and each value back to the one or more keys it
-is associated with in constant time. It does this by simply storing
-the data twice.
-
-Sample usage::
-
- # Initialize with a normal dict...
- third_party_wierdos = BiDict({
- 'prometheus-fastapi-instrumentator': 'prometheus_fastapi_instrumentator',
- 'scikit-learn': 'sklearn',
- 'antlr4-python3-runtime' : 'antlr4',
- 'python-dateutil': 'dateutil',
- 'speechrecognition': 'speech_recognition',
- 'beautifulsoup4': 'bs4',
- 'python-dateutil': 'dateutil',
- 'homeassistant-api': 'homeassistant_api',
- })
-
- # Use in one direction:
- x = third_party_wierdos['scikit-learn']
-
- # Use in opposite direction:
- y = third_party_wierdos.inverse['python_dateutil']
-
- # Note: type(y) is List since one value may map back to multiple keys.
-
-
.. automodule:: pyutils.collectionz.bidict
+ :imported-members:
:members:
:undoc-members:
:show-inheritance:
pyutils.collectionz.bst module
------------------------------
-The bst.BinarySearchTree class is a binary search tree container.
-
.. automodule:: pyutils.collectionz.bst
:members:
:undoc-members:
:show-inheritance:
+pyutils.collectionz.interval\_tree module
+-----------------------------------------
+
+.. automodule:: pyutils.collectionz.interval_tree
+ :members:
+ :undoc-members:
+ :show-inheritance:
+
pyutils.collectionz.shared\_dict module
---------------------------------------
pyutils.collectionz.trie module
-------------------------------
-The trie.Trie class is a Trie or prefix tree. It can be used with
-arbitrary sequences as keys and stores its values in a tree with paths
-determined by the sequence determined by each key. Thus, it can
-determine whether a value is contained in the tree via a simple
-traversal in linear time and can also check whether a key-prefix is
-present in the tree in linear time.
-
.. automodule:: pyutils.collectionz.trie
:members:
:undoc-members: