Crate sputnikvm_rlp [] [src]

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