Skip to main content

A python module that provides mutable mappings and sets implemented with binary trees.

Project description

Travis-CI Build Status

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bin_tree-0.3.0.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

bin_tree-0.3.0-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

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

Hashes for bin_tree-0.3.0.tar.gz
Algorithm Hash digest
SHA256 8849da2ab6660a2792c65057d827573d81714ff639eeaf628343bda9eb6ec3a1
MD5 ea5ca08e36577b738c414263fee0becc
BLAKE2b-256 7d601fafb38cd99b398c20f5e00da1e593d3312667186fa413a8b819a6ca5b68

See more details on using hashes here.

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

Hashes for bin_tree-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 580864601003bb3cdbe48eb258dc5aabdba8ade8fd080ddfb194ada2c9f35f13
MD5 d5eec01745cc49e6b40b88c7713d4fde
BLAKE2b-256 6f2240bd73a4de5614e63f1cff6a81ed344733d0101f37edcb06432fc8020fc8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page