dfinity-radix-tree: A generic data integrity layer.

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

'ghc-options: -O2' is rarely needed. Check that it is giving a real benefit and not just imposing longer compile times on your users.

This library allows you to construct a Merkle tree on top of any underlying
key–value database. It works by organizing your key–value pairs into a binary
radix tree, which is well suited for storing large dictionaries of fairly
random keys, and is optimized for storing keys of the same length.

Maintainers' corner

Readme for dfinity-radix-tree-0.5.1

dfinity-radix-tree: A generic data integrity layer.

Overview

This library allows you to construct a Merkle tree on top of
any underlying key-value database. It works by organizing your key-value pairs
into a binary radix tree, which is well suited for storing
large dictionaries of fairly random keys, and is optimized for storing keys of
the same length.

Usage

Define your database as an instance of the RadixDatabase type class.
Instances for LevelDB and LMDB
are already provided.