Crate rlp

Source
Expand description

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.

Structs§

PayloadInfo
Stores basic information about item
Rlp
Data-oriented view onto trusted rlp-slice.
RlpIterator
Iterator over trusted rlp-slice list elements.
RlpStream
Appendable rlp encoder.
UntrustedRlp
Data-oriented view onto rlp-slice.
UntrustedRlpIterator
Iterator over rlp-slice list elements.

Enums§

DecoderError
Error concerning the RLP decoder.
Prototype
RLP prototype
RlpType
Type of RLP indicating its origin database.

Constants§

EMPTY_LIST_RLP
The RLP encoded empty list.
NULL_RLP
The RLP encoded empty data (used to mean “null value”).

Traits§

Compressible
Trait for compressing and decompressing RLP by replacement of common terms.
Decodable
RLP decodable trait
Encodable
Structure encodable to RLP

Functions§

decode
Shortcut function to decode trusted rlp
decode_list
encode
Shortcut function to encode structure into rlp.
encode_list