A python module that provides mutable mappings and sets implemented with binary trees.
Project description
bin_tree
A python module that provides mutable mappings and sets implemented with binary trees.
Current status
This package is distributed in PyPI starting with version 0.2.0. It is a full implementation of MutableSet and MutableMapping for both AVL and Red-Black trees. Test coverage is > 90%, but it should be considered at beta quality because it still lacks real world application testing.
Starting with version 0.3.0, it is tested on Travis-CI, for Python versions >= 3.5 and <=3.9
Its full source is available from GitHUB.
Goals
This module intends to be used as a normal mapping. It provides various implementations, a non balancing one, an AVL one, and a red-black one.
Portability is very important here:
- few dependencies: a Python 3 (tested for version >= 3.5)
- no additional module requirements
Usage:
To be done
Installing
End user installation
With pip: pip install bin_tree
.
Developer installation
If you want to contribute or integrate bin_tree
in your own code, you should get a copy of the full tree from GitHUB:
git clone https://github.com/s-ball/bin_tree [your_working_copy_folder]
Running the tests
As the project only uses unittest, you can simply run tests from the main folder with:
python -m unittest discover
Contributing
As this project is developed on my free time, I cannot guarantee very fast feedbacks. Anyway, I shall be glad to receive issues or pull requests on GitHUB.
Versioning
This project uses a standard Major.Minor.Patch versioning pattern. Inside a major version, public API stability is expected (at least after 1.0.0 version will be published).
License
This project is licensed under the MIT License - see the LICENSE.txt file for details
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file bin_tree-0.3.0.tar.gz
.
File metadata
- Download URL: bin_tree-0.3.0.tar.gz
- Upload date:
- Size: 10.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8849da2ab6660a2792c65057d827573d81714ff639eeaf628343bda9eb6ec3a1 |
|
MD5 | ea5ca08e36577b738c414263fee0becc |
|
BLAKE2b-256 | 7d601fafb38cd99b398c20f5e00da1e593d3312667186fa413a8b819a6ca5b68 |
File details
Details for the file bin_tree-0.3.0-py3-none-any.whl
.
File metadata
- Download URL: bin_tree-0.3.0-py3-none-any.whl
- Upload date:
- Size: 10.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 580864601003bb3cdbe48eb258dc5aabdba8ade8fd080ddfb194ada2c9f35f13 |
|
MD5 | d5eec01745cc49e6b40b88c7713d4fde |
|
BLAKE2b-256 | 6f2240bd73a4de5614e63f1cff6a81ed344733d0101f37edcb06432fc8020fc8 |