#no-std #ethereum

no-std ethereum-rlp

Recursive-length prefix encoding, decoding, and compression

1 unstable release

Uses old Rust 2015

0.2.3 Dec 11, 2017

#223 in #ethereum

Download history 13/week @ 2022-03-06 15/week @ 2022-03-13 11/week @ 2022-03-20 7/week @ 2022-03-27 19/week @ 2022-04-03 13/week @ 2022-04-10 11/week @ 2022-04-17 13/week @ 2022-04-24 14/week @ 2022-05-01 17/week @ 2022-05-08 36/week @ 2022-05-15 21/week @ 2022-05-22 25/week @ 2022-05-29 33/week @ 2022-06-05 10/week @ 2022-06-12 61/week @ 2022-06-19

130 downloads per month
Used in fewer than 14 crates

MIT/Apache

59KB
1K SLoC

RLP

Recursive-length-prefix encoding, decoding, and compression in Rust.

License

Unlike most parts of Parity, which fall under the GPLv3, this package is dual-licensed under MIT/Apache2 at the user's choice. Find the associated license files in this directory as LICENSE-MIT and LICENSE-APACHE2 respectively.


lib.rs:

Recursive Length Prefix serialization crate.

Allows encoding, decoding, and view onto rlp-slice

What should you use when?

Use encode function when:

  • You want to encode something inline.
  • You do not work on big set of data.
  • You want to encode whole data structure at once.

Use decode function when:

  • You want to decode something inline.
  • You do not work on big set of data.
  • You want to decode whole rlp at once.

Use RlpStream when:

  • You want to encode something in portions.
  • You encode a big set of data.

Use Rlp when:

  • You are working on trusted data (not corrupted).
  • You want to get view onto rlp-slice.
  • You don't want to decode whole rlp at once.

Use UntrustedRlp when:

  • You are working on untrusted data (~corrupted).
  • You need to handle data corruption errors.
  • You are working on input data.
  • You want to get view onto rlp-slice.
  • You don't want to decode whole rlp at once.

Dependencies

~135KB