enc

Crates.ioenc
lib.rsenc
version0.18.0-rc.3
created_at2019-09-19 01:14:22.881248+00
updated_at2026-01-16 13:13:37.58737+00
descriptionThis library aids in processing encoded data.
homepagehttps://github.com/nikdeapen/enc
repositoryhttps://github.com/nikdeapen/enc
max_upload_size
id165843
size114,019
Nik Deapen (nikdeapen)

documentation

README

enc

This library aids in processing encoded data.

Features & Dependencies

enc = { version = "0.18.0-rc.3", features = ["full"] }

Primary Features

full
base-64           
hex
percent
var-int

For more features see the Crate Docs.

Dependencies

This crate has no dependencies.

Data & Value Encoding

There are separate traits for handling encoded data and encoded values.

The src/data folder holds the traits: Encoder, StringEncoder, Decoder and Validator. These traits provide an interface for encoders that operate on byte slices, such as base-64 & hex.

The src/value folder holds the traits: EncodedLen, EncodeToSlice, EncodeToWrite etc. These traits provide an interface for values that know how to encode and decode themselves such as var-int.

Future Work

  • Write better test cases and add fuzz testing.
  • Optimize encoding & decoding performance & memory usage.
  • Add third-party crate support for encodings (ex: faster-hex).
  • Add support for serde.
  • Add support for async contexts.
  • Add support for no-std contexts.
  • Review unsafe code.
Commit count: 21

cargo fmt