#tuple #sorting #key #ord #partial-ord #byte #lexicographically

tuple_key

A serialization format for lexicographically sorted tuples

6 releases (breaking)

0.5.0 Feb 19, 2024
0.4.0 Dec 27, 2023
0.3.0 Sep 21, 2023
0.2.0 Aug 2, 2023
0.1.0 Jun 25, 2023

#551 in Encoding

45 downloads per month
Used in 2 crates

Apache-2.0

220KB
5.5K SLoC

tuple_key

A serialization format for lexicographically sorted tuples. The keys have the property that any TypedTupleKey that implements lexicographically sorted Ord, PartialOrd traits in field declaration order will serialize to a valid byte string that sorts in the same way.

Status

Active development. This library has seen recent changes to match the types of keys supported by protobuf maps. Version 0.4 reset the serialization in backwards-incompatible ways.

Scope

This crate provides everything necessary to convert a struct to and from a tuple key.

Warts

  • The documentation is lacking.

Documentation

The latest documentation is always available at docs.rs.

Updating

  • 0.2.0 -> 0.3.0: Add schema support. Changed the encoding format in a backwards-incompatible way.
  • 0.1.1 -> 0.2.0: Added support for empty tuples in named structs. Backwards-compatible otherwise.

Dependencies

~1.5MB
~35K SLoC