Files
reth/crates/codecs
joshieDo 630baf5d70 feat(db): fuzzing & benchmark (#86)
* fuzz with test-fuzz

* move fuzzing to db/codecs

* add criterion & iai

* print encoded size sum on criterion benchmark

* fix BlockNumHash encode

* add gh action for benchmarks

* don't sum results

* test ci values

* Revert "test ci values"

This reverts commit cc47fd8053.

* specify criterion version

* add docs

* remove benchmark job
2022-10-19 13:08:07 -07:00
..

codecs

This crate allows to easily configure different codecs for different purposes (benchmarks, user configuration) with minimal changes. Having them to be configurable through annotations allows us to contain their implementations/leakage to isolated portions of the project.

Example:

Header struct

DB usage

Features

Feature defines what is the main codec used by #[main_codec]. However it is still possible to define them directly: #[use_scale], #[use_postcat], #[no_codec].

default = ["scale"]
scale = ["codecs-derive/scale"]
postcard = ["codecs-derive/postcard"]
no_codec = ["codecs-derive/no_codec"]